软件测试是软件开发过程中的基本活动。黑盒测试和白盒测试是两种不同类型的软件测试策略,它们具有同样强大的功能,并且结合使用时甚至更好。
黑盒测试
在软件中,黑盒测试很方便,可以减少灾难性(软件)崩溃的风险。灾难性的软件崩溃可能是什么?系统在更新客户数据库的过程中崩溃了?在这种情况下,可能会丢失客户数据。
黑盒测试分为三种类型:功能测试,非功能测试和回归测试。
黑盒功能测试
通过功能性的黑盒测试,我们可以在不知道软件如何执行的情况下检查该软件是否按预期进行。
软件是用模块或组件构成的。它是由许多不同的组件组成的一系列组件,组成一个完整的系统。通过以这种方式,在小型组件中,我们可以测试每个组件以确保其正常工作,而不仅仅是测试大型系统。
因此,对于每个小组件,都有输入和预期输出。要进行黑盒测试,您需要创建一个有效和无效输入的列表,包括边界条件等等。
这是一个简单的功能性黑匣子测试示例。假设有一个软件模块,该模块输入一个数字。
您的简化测试输入为:
- 正数
- 负数
- 零
- 小数点后的数字
- 非数字值
- 空输入
非功能黑盒测试
我们还可以使用黑盒测试来测试其他预期的系统行为。这些可能包括系统响应时间,预期的数据,大量网络流量等场景。
非功能测试将包括诸如设置模拟测试环境之类的内容,以查看系统在压力下的性能。有各种各样的工具可以帮助我们实现这些测试目标并使所涉及的流程自动化。
回归黑盒测试
这是当我们在一个地方进行更改时,对整个系统进行黑盒测试(包括功能测试和非功