测试是指检查软件或应用程序的错误是否少?按客户要求检查软件或产品功能是否正常
测试可以提高产品的质量、可靠性和性能。
多年来,软件测试以多种方式发展;从开发人员在软件构建期间完成的活动;到验证和验证软件交付的专用测试工厂,到在编写代码之前(以及在两者之间)将测试作为规范编写的方法。
许多人认为软件测试是验证软件的需求已经交付,并确认它们已经以正确的方式交付。这种类型的软件测试很适合自动化测试方法,其中测试的布尔结果是可以实现的。因此,这种测试的方法通常使用aaa(安排、行动、断言)模型,无论是在单元、集成、验收还是GUI测试级别。
然而,这种方法的反对者拒绝使用术语"测试",而倾向于使用"自动检查",并认为软件"测试"是定义风险的过程,通过更好地理解软件上下文来设计实验以暴露这些风险的表现形式。目的、用户群体和目标。这些属性很难用布尔术语来描述,因此(正如James Bach所描述的),软件测试可以被看作是对正在开发的软件做出明智选择的学习机会。
一个强大的软件测试方法将考虑这两种方法,并从中选择最相关的方面。