什么是回归测试?
?
回归测试是一种软件测试形式,用于检查新的或现有的代码更改是否对应用程序产生了任何影响。无论何时发生代码更改,都必须验证应用程序是否继续工作。执行回归测试有助于完成此任务并确保应用程序按预期运行。
如何进行回归测试
检查回归有两种方法,可以手动完成,也可以自动完成。
众所周知,手动操作任何事情都非常耗时且难以扩展。在所有以前的版本中测试每个版本的新功能和错误修复并不是一项简单的任务。这是可以做到的,但这并不容易。手动回归测试很有用,因为它可以帮助发现最初没有想到或未在测试脚本中涵盖的问题。如果可能,尽可能自动化,并尝试将手动测试控制在可控范围内。
自动化回归测试有助于加速测试。它可以在新软件发布时大规模验证应用程序行为。通过自动化回归测试,创建和编写测试脚本以测试特定场景。每次执行测试套件时,这些测试都可以反复使用。但是,由于这些测试专门设计用于仅测试被告知要测试的内容,因此它只会这样做,为边缘情况留下灰色区域。
回归测试最佳实践
现在你什么时候可以开始,你会做什么?
回归测试可以在单元测试期间立即开始。开发人员应该编写测试,以根据需求考虑正确的工作流程
继续根据系统、集成和功能测试中的要求编写测试来说明正确的工作流的良好做法。
随着各种系统集成在一起(货币交易、数据库输入等),测试可能会变得更加复杂。
一旦这些测试得到强化,它们就可以在项目期间使用,并且可以在每个新构建中启动。
就是这样。完成上述三个步骤后,您将能够构建出色的回归测试,该测试将:
指示何时引入了错误和缺陷
验证是否满足要求并且软件按设计工作。
验证软件是否按预期工作(如果测试基于经过彻底审查的良好需求)
回归测试示例
可以执行不同类型的回归测试。这样做的原因是再次重新测试应用程序以确认问题已修复。
使用回归测试的两个示例:
错误回归涉及专门针对错误进行测试以验证它已被修复。
功能回归涉及对整个应用程序进行测试以确保其正常工作。
其他回归测试——视觉回归测试
还有其他形式的回归测试。特别是最近流行起来的一种是视觉回归测试,通常称为视觉测试。视觉测试是用户如何确保他们的应用程序按照最初的预期呈现给最终用户。它涉及验证应用程序的用户界面 (UI) 是否没有视觉错误。
自动化视觉测试会自动在当前 UI 上运行测试,以查看是否发生了任何回归。此过程涉及将两个图像进行比较,将屏幕的新快照与先前保存的快照(设置为比较基准)进行比较,以查看是否检测到任何更改。任何更改都将突出显示以供审核。
尽管这是自动完成的,但无论更改是否有意,都需要有人手动参与才能做出决定。
结论
对代码库进行更改,无论是修改现有代码还是添加新代码行,都可以完美运行(我们都希望如此),或者可能导致我们害怕的问题。幸运的是,这包含在回归测试中,并且已被证明有助于减少发布的错误数量。回归测试对于软件开发至关重要,因为它可以确保在遵守规定的要求的同时不会引入新的错误。