西宁网站制作哪里好哪个网站做母婴用品好
软件测试复习
- 试题分布

- 软件测试绪论


- 软件测试定义

- 软件测试分类:



- 软件测试目的:

- 测试与开发的关系

- 过程和流程:
过程和流程是对同一事物不同级别的描述,并不是包含关系。过程抓大放小,流程事无巨细。 - 白盒测试(结构化测试)

- 动态测试执行被测代码;静态测试不执行(借助测试工具进行测试,但是不直接执行被测代码)
- 覆盖率:评估测试对于被测代码的覆盖程度。
评估测试方案的质量。 - 语句覆盖 < 条件组合覆盖
- Fixture:配置整个测试环境
- Runner:运行器
不只有一种运行器,对于不同的单元测试方式,对应不同的运行器。 - Assert:断言验证
- TestResult:收集管理结果
- TestCase:测试用例
- Suite:测试套件
- Parameters:参数化测试
- Junit运行示例:
-
- 必须在测试之前,使用@Before创建实例。
使用assertxxx进行断言。具体有:
1. assertEquals(val, 测试类方法);
2. assertTrue(测试类方法);
3. 在测试启动类上加上 @Runwith(Parameterized.class) 注解
- 参数化测试,可以在@SuiteClasses后面加上想要测试的类。
注意事项:
1. 这种必须使用Collection<Object[] data>进行接收测试参数。
2. 使用Arrays.asList(new Object[][]{})进行设计测试参数
3. 在参数设计的类上加上 @Parameters 注解
4. @SuiteClasses 上面一定加上 @Runwith(Suite.class) 表明调用Suite的测试启动器。

解释:
添加多个测试类:

- 必须在测试之前,使用@Before创建实例。
- 白盒测试(结构测试)方法——主要用于单元测试(逻辑覆盖)大部分情况使用基本路径测试法

- 语句覆盖:
让每一条语句都执行一次 - 判定(分支)覆盖:
让每个判断真和假至少经历一次。
让全是、全否都走一遍。
-
- 只要满足了判定覆盖标准就一定满足语句覆盖标准。
- 条件覆盖


只看每个条件(判定中的小条件,而不是整个判定P1/P2)

- 判定条件覆盖


判断和条件的真假,都要取到。


- 条件组合覆盖


- 路径覆盖


- 覆盖标准的关系

- 基本路径法




这个路径的数量就是环路复杂度。

- 黑盒测试(功能测试)

- 功能测试方法:
-
- 等价类划分
-
-
- 等价类表

- 测试用例表

- 等价类表
-
-
- 边界值分析法
-
-
- 取值范围

- 测试用例

- 取值范围
-
-
- 判定表方法
-
-
- 就是输入条件的完全排列组合
- 判定表设计


-
-
- 正交实验法
-
-
- 正交表的选择



- 例题




- 原则

- 正交表的选择
-
-
- Pair-wise方法
-
-
- 定义

- 例题



- 定义
-
-
- 因果图法
-
-
- 例题

- 步骤




- 例题2



- 例题
-
- AR测试步骤:
-
- 制定计划
- 录制测试脚本
- 增强脚本
- 运行脚本
- 分析结果
- 增强测试脚本的目的?
如果没有增强,这个脚本不算完整意义上的功能脚本。
检查点是连接实测结果和预期结果之间的桥梁。
测试结果的通过与否,是与检测点的预期结果和实际结果是否一致息息相关的;如果一致,测试通过;不一致则测试不通过。 - 进行功能测试,使用什么方式进行增强脚本(增加检测点)?
- 检测点的类型?
文本、网页、数据库、表格 - 良好的测试脚本,测试数据怎么设计?
比如白盒测试,使用条件组合覆盖。使用更多的数据驱动完成测试。 - 参数化测试:
测试数据和测试逻辑分开。 - 性能测试

- 练习题
-
- 白盒测试

- 画流程图

- 题解



条件覆盖:
- 将所有的条件摘出来
- 写出他们的反方面
如果判定条件有两部分组成,那就拆开为两个独立的判定条件。 - 写出两个测试用例,满足他们
每个测试用例满足的是一组(正+反是一组)中的其中一个。



- 练习5:


- 练习6:



- 各种测试方法对应的工具

