结构软件测试
结构测试是一种软件测试,它使用软件的内部设计进行测试,或者换句话说,由了解软件开发阶段的团队执行的软件测试,称为结构测试。
结构测试基本上与软件的内部设计和实现有关,即它涉及测试团队中的开发团队成员。它基本上根据其类型测试软件的不同方面。结构测试与行为测试正好相反。
结构测试的类型:
结构测试有 4 种类型:
控制流测试:
控制流测试是一种结构测试,它使用程序的控制流作为模型。对于此类测试,必须了解软件的整个代码、设计和结构。开发人员通常使用这种类型的测试来测试他们自己的代码和实现。该方法用于测试代码的逻辑以获得所需的结果。
数据流测试:
它使用控制流图来探索数据可能发生的不合理的事情。
数据流异常的检测基于值和变量之间的关联。没有被初始化变量的使用。初始化的变量不会被使用一次。
基于切片的测试:
它最初是由 Weiser 和 Gallagher 提出的,用于软件维护。它对于软件调试、软件维护、程序理解和功能凝聚力的量化很有用。它将程序分成不同的切片并测试可以主要影响整个软件的切片。
突变测试:
突变测试是一种软件测试,用于设计新的软件测试并评估现有软件测试的质量。突变测试与以小方式修改程序有关。它侧重于帮助测试人员开发有效的测试或定位程序使用的测试数据中的弱点。
结构测试的优点:
- 它提供了对软件的全面测试。
- 它有助于及早发现缺陷。
- 它有助于消除死代码。
- 它并不耗时,因为它大部分是自动化的。
结构测试的缺点:
- 它需要代码知识才能执行测试。
- 它需要对用于测试的工具进行培训。
- 有时它很昂贵。
结构测试工具:
- JBehave
- Cucumber
- 朱尼特
- 固定