一、软件测试的目的
是在最小的成本和最短的时间内,通过设计良好的测试规程和测试用例,系统地发现不同类别的错误。
二、软件测试的基本原则
设计好的测试用例、不可能进行穷举测试、尽早开展测试、重点测试、定期进行检验与修正测试用例,并增加新的测试用例、测试依赖于系统环境、测试用例应该包含合理和不合理的输入条件。
测试过程模型
V模型特点:1、对应瀑布模型的变种(自下到上)线性关系
2、有局限性,在于不能体现“尽早地和不断地进行软件测试”的原则
3、仅仅把测试过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段,容易
使人理解为测试是软件开发的最后的一个阶段,主要是针对程序进行测试寻找误,而
需求分析阶段、设计阶段隐藏的问题可能一直到后期的相应测试才被发现。
W模型特点:1、两个”V模型“,开发与测试相结合
2、开发与测试保持一种线性的前后关系
H模型特点:1、可交叉进行
2、测试过程是一个独立的过程
三、测试类型
测试类型可分为:单元测试、集成测试、系统测试、验收测试、回归测试
1、单元测试:主要检测独立的软件单元,为了发现程序级别的错误
面向代码设计与结构
2、集成测试:独立的软件单元(模块)组合过程中所进行的测试。
面向详细设计文档
结构化方法下的集成测试策略:BingBang策略、自顶向下策略、自底向上策略
BingBang策略:所有模块一次性集成为一个整体系统,后对各个模块之间的接口工作进行测试
优点:在于测试之间所有的整合工作已经完成
缺点:在于整合过程较为费时,且集成过程中若引入新的错误则难以追溯
自顶向下策略:先测试软件模块结构图最顶端的模块,后集成下一层的模块再进行测试,直到所
有模块全部组合并测试完。
自底向上策略:先测试软件最底层模块,后集成上一层模块并进行测试,逐步将所有模块组合并
测试完毕。
面向对象方法下的集成测试:主要有基于线程的策略和基于使用的策略。
步骤:1)按照设计阶段的说明画出对象图
2)开发端口输入事件所驱动的类
3)开发与主类直接相关的类
4)将与主类直接相关联的类集成
5)对新集成的模块进行测试
6)从已集成的模块中选一个新类作为下一步的集成类
3、系统测试:对应于概要设计和需求分析,进行系统测试以确保其功能的正确性,以及在不同运行  
环境配置下系统的可用性。
4、验收测试:是一种以用户为主的测试,由客户判断最终是否在可接受范围之内,软件开发人员和
质量保证小组也同时参与。
5、回归测试:根本目标在于检测新代码的正确运行,并且不影响其他已运行正确的功能
(集成测试着重测试的是各个模块之间接口运行情况,系统测试是将系统软件作为整个计算机系统的一个元素)
四、测试方法
测试方法有不同 的标准:1)按是否需要执行被测试软件,软件测试可分为静态测试、动态测试。
2)按是否需要查看代码,软件测试可分为白盒测试、黑盒测试、灰盒测试
3)按测试执行时是否需要人工干预,软件测试可分为自动测试、人工测试
1、静态测试(代码复查):是在不要执行所测试程序的情况下,对代码、需求分析和设计文档等 进
行缺陷查找。
主要目的:在于尽早发现系统缺陷,提高软件产品的质量。
主要特征:表现在不需要实际运行,充分发挥人的思维优势,可能比较耗时耗力,
对测试人员要求比较高。
2、动态测试:是通过选择适当的测试用例,实际运行所测试的程序,比较实际运行结果和预期结
果,以发现软件中潜在的缺陷。
主要目的:在于确定软件产品符合实际业务需求,可适用在单元测试、集成测试、系统测试等。
3、白盒测试:也称为玻璃盒测试、结构化测试等。(需查看代码)
4、黑盒测试:也称为功能测试、数据驱动测试,是一种从用户观点出发的测试。(不需查看代码)
5、灰盒测试:介于白盒测试与黑盒测试之间的测试。
6、手工测试:是完全由人工测试工作,包括测试计划的制定,测试用例的设计和执行,以及测试结    
果的检查和分析等。
7、自动测试:是各种测试活动的管理与实施,是使用自动化测试工具或自动化测试脚本来进行的测
试,包括测试脚本的开发与执行等,以某种自动测试工具来验证测试需求。
五、测试用例设计
测试用例=输入+输出+测试环境
测试用例设计应满足以下标准:1)测试用例的目标清楚
(从整体而言)                        2)设计思路正确、清晰
3)在组织和分类上,测试用例层次清楚、结构合理
4)测试用例覆盖所有测试点、覆盖所有已知用户使用背景
5)测试手段的区别对待
6)有充分的负面测试
7)没有重复、冗余的测试用例
测试用例设计应满足以下条件:1)测试用例的出发点是发现缺陷
(从具体的测试用例)              2)测试用例的单一性
3)符合测试用例设计规范或测试用例模板
4)描述清楚
5)操作步骤的准确性
6)操作步骤的简单性
7)所期望的测试结果是可验证的
8)测试环境的正确性、测试数据的充分性
9)前提条件、依赖性被完全识别出来
每个核心的输入条件:1)正确数据   2)边界数据     3)错误数据
六、模块内测试
逻辑覆盖技术是白盒测试中最主要的一种技术,包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖。
1、语句覆盖:设计若干个测试用例,运行测试程序,使得每一可执行语句至少执行一次。
2、判定覆盖:设计若干个测试用例,运行测试程序,使得程序中的每个判断的取真分支和取假分支
至少执行一次。(分支覆盖)
3、条件覆盖:设计若干个测试用例,运行测试程序,使得程序中每个判断的每个条件的可能取值
至少执行一次。
4、判定/条件覆盖:设置若干个测试用例,运行测试程序,使得判定表达式中的每个条件都取到各种
可能的取值,且每个判定表达式也都取到各种可能的结果。
5、条件组合覆盖:设置若干个测试用例,运行测试程序,使得每个判定的所有可能的条件取值组合
至少执行一次。

转载于:https://www.cnblogs.com/chouqiuqiu/p/8797944.html

软件测试概述、结构化测试相关推荐

  1. 软件测试--接口流程化测试

    在接口编写完成之后,需要就行接口流程化测试,查看接口之间的数据关联性,apipost自带接口流传测试功能 点击流程测试 选择需要进行流程测试的接口 点击开始测试就可以进行流程测试了,流程测试可以查看断 ...

  2. 【软件测试】结构化分支和循环语句的白盒测试

    文章目录 黑盒测试与白盒测试 分支语句的白盒测试 测试用例设计方法 举例 画流程图 设计语句覆盖测试用例 设计分支覆盖测试用例 设计路径覆盖测试用例 循环语句的白盒测试 简单循环 嵌套循环 连锁循环 ...

  3. 自动化测试和手动化测试的区别到底在哪里呢?

    现在自动化软件测试工具逐渐深入软件测试领域,但是关于自动化测试与手动测试的争议一直存在,各有各的优点,很难一分高下.对于专业的测试人员来说,两者都是软件测试过程中常用到的,那么今天就来讲讲的自动化软件 ...

  4. 软件测试工程师必备软技能:结构化思维

    今年是入测试行业的第十年,回想在这十年职业生涯中,来来往往也接触过形形色色的人.在跟不同的人一起工作的过程中,我会经常产生一些困惑,比如: - 面对同样复杂的测试任务,有些人可以在一天之内梳理出解决方 ...

  5. mysql 结构化数据库_【MySQL】——MySQL数据库和SQL结构化查询语言概述

    [MySQL]--MySQL数据库和SQL结构化查询语言概述 [MySQL]--MySQL数据库和SQL结构化查询语言概述 文章目录数据库和SQL语言[1]数据库概述 [2]SQL语言 [3]MySQ ...

  6. 结构化开发方法之系统分析与设计概述

    目录 一.总体结构 二.系统分析 三.系统设计的基本原理 四.总结结构设计 五.系统文档 一.总体结构 1.结构化方法总的指导思想:自顶向下,逐层分解. 2.基本原则:功能与分解的抽象 3.应用领域: ...

  7. 数据库-结构化查询语言SQL概述

    一.什么是SQL 概念 结构化查询语言 用于访问和操作数据库的标准计算机语言 2.用途 操作数据库对象 表记录的增删改查 二.使用SQL重要性 增加数据库处理效率,减少应用响应时间 减少数据库服务器负 ...

  8. 【1+X】软件测试概述

    想看更多内容请移步专栏 转载:[1+X]软件测试技术 - 软件测试概述 - 蓝桥云课 (lanqiao.cn) 软件测试概述 知识点 软件测试的概念 软件测试的目的 软件测试的重要性 QA 和软件测试 ...

  9. 结构化场景中的RGB-D SLAM

    点云PCL免费知识星球,点云论文速读. 文章:RGB-D SLAM with Structural Regularities 作者:Yanyan Li , Raza Yunus , Nikolas B ...

最新文章

  1. 今天的 IBM —— 一封来自 IBM 董事长、首席执行官 Arvind Krishna 的公开信
  2. pytorch 入门基础
  3. 强大的数据库管理工具Navicat Premium安装教程
  4. Java中从Orcle里取出数据时,为什么提示“无效的列索引”
  5. Fast R-CNN论文详解 - CSDN博客
  6. 【MobX】390- MobX 入门教程(上)
  7. 程序员面试金典 - 面试题 01.03. URL化(字符串)
  8. ESI大学最新排名出炉:中国内地342所大学上榜!中国科学院大学排榜首!(附内地榜单)...
  9. 第三范式的作用_钟启泉:教学范式的转型,让一线教师面临三大挑战 | 头条
  10. 三级网络-不单单是学知识
  11. Angular、React 当前,Vue.js 优劣几何?
  12. 凸优化第四章凸优化问题 4.4二次优化问题
  13. 《Python数据分析与数据挖掘实战》第十五章学习——文本分析
  14. 集成电路技术与产业发展
  15. 遥感专业学c语言吗,2019遥感科学与技术专业怎么样、学什么、前景好吗
  16. 广东省潮州市谷歌卫星地图下载
  17. 双足机器人重心在头部_双足行走机器人及其重心调节装置制造方法及图纸
  18. 复合赋值运算符“+=、-=、*=、/=、%=”详解
  19. 百味融汇的火锅宴,品一品别样热辣的鲲鹏生态
  20. spring mvc Discus

热门文章

  1. 树莓派Odroid等卡片式电脑上搭建NAS教程系列5-Samba服务器安装
  2. 公司内部如何防止员工泄密
  3. 【笔试面试】腾讯WXG 面委会面复盘总结 --一次深刻的教训
  4. oracle有两个文件,我常用的两个ORACLE的文件
  5. python列表乘法运算_Python列表基本运算和元组
  6. chrome不支持embed标签解决方案
  7. android自定义seekbar样式,自定义SeekBar样式
  8. 计算机桌面怎么截图快捷键,电脑截图的快捷键是什么_屏幕截图快捷键_怎么截图快捷键-太平洋IT百科手机版...
  9. excel打开csv后空白解决方法
  10. 100多种清除木马方法