搜索结果: GB/T 38639-2020, GB/T38639-2020, GBT 38639-2020, GBT38639-2020
| 标准编号 | GB/T 38639-2020 (GB/T38639-2020) | | 中文名称 | 系统与软件工程 软件组合测试方法 | | 英文名称 | Systems and software engineering - Software combinatorial testing method | | 行业 | 国家标准 (推荐) | | 中标分类 | L77 | | 国际标准分类 | 35.080 | | 字数估计 | 38,314 | | 发布日期 | 2020-04-28 | | 实施日期 | 2020-11-01 | | 发布机构 | 国家市场监督管理总局、中国国家标准化管理委员会 | | 范围 | 本标准给出了软件组合测试输入预处理方法和组合强度设定,规定了组合测试约束条件和种子、组合测试过程要求以及组合测试输入输出表示方法。本标准适用于软件组合测试的用例设计和充分性评估。 |
GB/T 38639-2020
Systems and software engineering -- Software combinatorial testing method
ICS 35.080
L77
中华人民共和国国家标准
系统与软件工程 软件组合测试方法
2020-04-28发布
2020-11-01实施
国 家 市 场 监 督 管 理 总 局
国 家 标 准 化 管 理 委 员 会 发 布
目次
前言 Ⅰ
1 范围 1
2 术语和定义 1
3 输入预处理 2
4 组合强度 3
5 组合测试的约束条件和种子 5
6 组合测试过程要求 6
7 组合测试输入输出表示 6
附录A(资料性附录) 软件完整性级别与组合强度要求参考 9
附录B(资料性附录) 组合测试方法示例 10
附录C(规范性附录) 组合测试输入输出XMLSchema 30
参考文献 34
系统与软件工程 软件组合测试方法
1 范围
本标准给出了软件组合测试输入预处理方法和组合强度设定,规定了组合测试约束条件和种子、组
合测试过程要求以及组合测试输入输出表示方法。
本标准适用于软件组合测试的用例设计和充分性评估。
2 术语和定义
下列术语和定义适用于本文件。
2.1
组合测试方法
基于多参数组合进行软件测试的一种方法。
注:在组合测试中,被测试应用被抽象为一个黑盒,它有多个输入参数,其行为受输入参数之间的组合测试影响。
2.2
组合强度
用于表示测试参数取值组合的复杂度。
2.3
参数
测试目标相关的输入参数、配置参数或环境参数。
注1:参数类型包括整型、浮点型、布尔型和字符串型。
注2:待测软件的参数可以是函数的输入参数、命令行参数、表单输入框、配置文件中的配置项。
2.4
取值范围
参数取值的范围或集合。
2.5
变强度
对不同的参数子集给出不同组合强度的要求。
注:组合测试中组合强度的一种特殊要求。通常是在默认组合强度的基础上,待测软件的某几个参数子集采用不同于默认值的组合强度。
示例:一个系统具有a、b、c、d、e五个参数,默认组合强度为2,其中a、b、c三个参数由于特殊要求需要设置3强度组合,
则该系统的测试用例需同时满足a、b、c、d、e五个参数的2强度组合,以及a、b、c三个参数的3强度组合。
2.6
测试用例套
针对特定测试目标的测试用例集合。
2.7
种子
组合测试中由用户定义应被测试的取值组合。
行约束,否则不进行约束。
b) 无条件约束:无条件约束不需要约束条件。任何测试用例均应满足约束表达式。
约束条件和约束表达式应支持关系运算符及逻辑运算符。
关系运算符可包含但不限于等于(==)、不等于(=)、大于( >)、大于或等于(≥)、小于(< )和小于或等于(≤)等。
5.2 种子
组合测试方法应能支持指定参数值测试用例的种子。
种子的参数、值及其约束关系应该和模型文件中参数一致。如果不一致,应根据如下原则处理种子:
a) 忽略种子中包含了模型文件中不存在的参数;
b) 忽略种子中在模型文件中不存在的参数值;
c) 忽略种子中违反了在模型文件中定义的约束条件。
6 组合测试过程要求
组合测试的测试过程如下:
a) 确定测试范围:确定所需测试的软件功能及参数。
b) 导出测试条件:针对每个参数确定其取值范围,对于连续变量参数取值范围的确定可按照第4
章的方法进行输入预处理。
c) 导出测试覆盖项:采用组合测试的方法,根据组合定义的组合强度,生成测试覆盖项。在组合
测试中,测试覆盖项应包含测试项参数与组合强度相符的“参数-值”对。
d) 导出测试用例:依据测试覆盖项生成测试用例,直到每个测试覆盖项都包含在至少一个测试用例中。
e) 分配测试用例套:当测试用例数量过多时,可将依据某个关键参数的取值不同,将测试用例分
配不同的测试用例套。
f) 执行测试:将测试用例套交由测试人员执行。
g) 充分性评估:计算强度组合的覆盖率,可参考附录A给出完全符合或部分符合的结论,分析未
达到要求的原因。
附录B给出了组合测试用例生成的完整示例。
7 组合测试输入输出表示
7.1 一般要求
组合测试输入应包含组合强度和各参数的定义,宜包含指定参数的变强度定义、种子定义和约束条件。
常见的输入输出格式包括XML格式和JSON格式。XML格式适用于解析速率要求较高和可靠
性要求高的测试环境;JSON格式适用于需要远程传输测试数据且对传输效率要求较高的测试环境。
组合测试的输入输出格式文件见附录C。
附 录 B
(资料性附录)
组合测试方法示例
B.1 概述
本附录给出了某系统的测试项目采用组合测试方法进行测试用例生成的情况。
B.2 参数
本系统具有五个参数,分别为平台、CPU核数、主存容量、外存接口和操作系统,均为字符串类型,
其取值范围如下:
---平台的取值范围:x86,ia64,amd64。
---CPU核数的取值范围:Single,Dual,Quad。
---主存容量的取值范围:128MB,4GB,64GB 。
---外存接口的取值范围:SCSI,IDE。
---操作系统的取值范围:OS1,OS2,OS3,OS4。
B.3 组合测试需求
B.3.1 强度要求
默认为成对组合覆盖。
CPU核数、主存容量和操作系统三个参数需要3强度组合。
B.3.2 种子
本系统应测试的种子如下:
a) 平台为amd64,主存容量为64GB,......
|