目录
课本内容
1、软件缺陷的概念
(课本第五页)
①是存在于软件(文档、数据、程序)之中的那些不希望或不可接受的偏差。缺陷的存在会导致软件产品在某种程度上不能满足用户
②IEEE:从产品内部看,缺陷是软件产品开发或维护过程中存在的错误、毛病等。
从产品外部,缺陷是系统需要实现的某种功能的失效或违背。
2、软件测试的4个阶段:
单元测试、集成测试、系统测试、验收测试
3、生命周期(6个)
测试需求分析、测试计划、测试设计、测试开发、测试执行、测试总结和报告
4、静态测试、动态测试区别
判断一个测试属于动态测试还是静态测试,其标准是:是否 需要运行被测试的程序。
(1)测试方式
静态:
不运行被测程序,而是手工或乏用的软件测件工具来检查、评审软件文档或程序,度量静态复杂度,检查软件是否符合编程标准,寻找程序中的问题和不足,降低错误出现的概率。
动态:
运行被测程序,输入测试数据,观察输出结果与预期结果是否相符来验证程功能是否正确,以及性能、安全性等是否符合要求。
(2)测试组成
静态:代码检查、静态结构分析、代码质量度量。
动态测试过程由以下三个阶段组成。
- 设计和构造测试用例。
- 执行被测试的程序并输入测试数据。
- 分析程序的输出结果。
(3)优缺点
优点 | 缺点 | |
静态测试 | (1)发现缺陷早,能降低返工成本; (2)发现缺陷概率高; (3)发现的是缺陷本身,便于修改缺陷; (4)有代码覆盖的针对性 | (1)耗费时间长; (2)对测试员技术能力要求较高,需要知识和经验积累; (3)准备工作多 |
动态测试 | (1)较为简单易行; (2)能测试性能等非功能性特性 | (1)发现缺陷迟; (2)发现缺陷概率低; (3)发现的只是缺陷的外部表现,而不是缺陷本身,后续还需要去定位缺陷的具体位置; (4)没有代码覆盖的针对性 |
5、黑盒白盒区别
6、α测试和β测试
7、回收测试

8、软件质量的概念
软件质量,就是软件符合明确叙述的功能和性能需求、文档中明确描述的开发标准,以及软件和隐含特征相一致的程度。
9、iso的6大特征
可靠性、易用性、效率、维护性、可移植性、功能性
10、度量的公式
密度 = bug数量 / 规模
11、测试用例的概念
测试用例(Test Case)是为某个特定的目标而编制的一组测试输入、执行条件以及预期结果。
完整的测试用例是对一项特定的软件测试任务的详细描述。它可以体现测试方案、方法、技术和策略。它的内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并应形成文档。
最简化的情况下,一个测试用例至少应当包括输入数据和预期结果两部分。
12、缺陷基本信息
缺陷的状态:“待分配”“待修正”“待验证”“待评审”“关闭”
缺陷的严重程度:一般分为“致命”“严重”“一般”“建议”
缺陷类型:界面缺陷、功能缺陷、安全性缺陷、接口缺陷、数据缺陷、性能缺陷
随堂练习
1、测试流程
2、等价类划分法
1、等价类的划分有两种不同的情况:
① 有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据构成的集合。② 无效等价类:是指对于程序的规格说明来说,是不合理的,无意义的输入数据构成的集合。
2、为每一个等价类规定一个唯一编号;
3、设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;
4、设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。
某直辖市的电话号码由三部分组成,这三部分的名称和内容分别是:
(1)地区码:空白或3位数字;
(2)前缀:非“0”和非“1”开头的3位数字;
(3)后缀:4位数字
假定被测程序接受一切符合上述规定的电话号码,拒绝所有不符合的号码,试设计它的等价类以及测试用例(仅支持单缺陷假设)。
要求:给出详细等价类分析过程,列出等价类,并设计测试用例。
3、判定表

4、因果图
5、场景法
6、白盒测试(逻辑覆盖)
7、 集成测试
8、 并发用户计算