目录:
定义-变异测试是什么意思?
变异测试是一种软件测试方法,其中故意操纵程序或源代码,然后进行针对变异代码的测试套件。 引入源代码的变异旨在模仿常见的编程错误。 一个好的单元测试套件通常会检测程序变异并自动失败。
变异测试可用于许多不同的平台,包括Java,C ++,C#和Ruby。
Techopedia解释了突变测试
变异测试是一种简单而巧妙的方法,用于验证源代码的正确性和测试过程。 这个概念最早是由理查德·利普顿(Richard Lipton)在1971年提出的,从那时起,人们的兴趣就激增了。
变异测试的工作机制简单明了。 选择了一个包含所有单元测试的源代码。 在验证了给定源代码的所有肯定测试之后,将突变引入程序。
应用于给定代码块的突变程度可能会有所不同。 常见的变异测试实现包括用逆运算符代替逻辑运算符。 例如,使用运算符“!=”代替“ = =”。 在某些情况下,变异涉及重新排列行以更改执行顺序,甚至删除几行代码。 复杂的突变测试级别可能会导致编译错误。
修改程序后,将对变异的代码执行一系列的单元测试。 根据测试质量,变异代码是否通过单元测试。 编写良好的单元测试必须检测到突变的代码错误,从而导致失败。 无法检测到代码错误的单元测试可能需要重写。
变异测试具有以下优点:
- 程序代码故障识别
- 有效的测试用例开发
- 检测测试数据中的漏洞
- 改善软件程序质量
- 消除代码歧义
突变测试的缺点包括:
- 难以实现复杂的突变
- 昂贵且耗时
- 需要具备编程知识的熟练测试人员
