1.无故障脚本编写及维护
形成测试自动化脚本必须相对容易而不需要额外的努力,特别是在实践要求高速度的敏捷交付实践时。对于每个 sprint,你都需要新的回归测试,但是,如果你没有完美的回归测试工具来支持你,你就会浪费大量的时间来升级你的测试,因为测试中的应用程序正在升级。您必须快速执行自动化测试,并且您的测试需要适应较小的修改,这样您就不必花费额外的时间重新修改您的自动化回归测试。
2.可扩展性和可重用性
如果代码修改影响测试中的应用程序,则必须毫不费力地处理每个受影响的测试,而无需重写每个测试脚本。您首选的功能测试工具应该允许您将测试模块化。此外,您应该构建可重用的测试片段或脚本库,以便快速生成新的测试。此外,您必须使用数据驱动的测试策略,这些策略允许您在无限数量的场景中使用单个测试。
3.在每个构建后运行回归测试
测试软件必须与持续集成/持续交付管道集成,使功能回归测试成为构建过程的一部分。所选择的回归测试工具必须毫不费力地插入到您的 CI/CD 首选项中,并且必须足够活跃来为智能管道供电,触发基于测试结果的活动。
4.描述性和快速报告
丰富的错误消息在“通过/失败”之前)对于帮助识别错误的原因至关重要,理想情况下,这必须包括诊断信息和屏幕截图,这样就不需要“在我的机器上工作”的抽签。报告必须包含关于以前进行的测试的重要信息,以便在接近测试用户情景的区域发现重要的回归是可行的,例如网络和性能测试问题,以及视觉回归。您首选的功能性回归测试工具必须帮助您认识到哪些地方需要额外的测试覆盖,以便您可以更加主动。
5.无限并行执行
由于当前交付实践的敏捷性,您的测试必须快速执行并快速给出结果。当您有如此多的测试用例针对不同的浏览器版本、场景和屏幕大小运行时,您所需要的资源数量将呈指数级增长。完美的回归测试工具将按需提供这些资源,没有限制,因此您可以在完成1个测试所消耗的时间内执行完整的测试套件。
6.并行执行
回归自动化测试工具必须能够计划和调度您的自动化测试,以便在不同的环境中并行执行多次,从而在实现期间节省您的时间。使用其他数据集来识别对不同执行环境敏感的变量是至关重要的,这些数据集在每个阶段(如开发、分段、测试和生产)的不同执行环境中容易发生变化。
7.可扩展性和可重用性
如果代码修改影响测试中的应用程序,则必须能够轻松地处理所有受影响的测试,而不必重写每个测试脚本。你首选的回归测试工具应该能够让你模块化你的测试。您必须足够活跃,以生成脚本库或可重用的测试代码段,这样才能快速构建新版本的测试。您应该聪明地使用数据驱动的测试策略,这样您就可以在无限的场景中使用单个测试。
8.协同工作
对于从开发人员到 QA 的各种团队成员来说,访问测试以及测试结果必须是没有问题的,这样任何可识别的回归都可以尽快进行故障排除和缓解。
推荐阅读