自动化测试实践清单

2020-12-09 14:36:24 浏览数 (1)

不能否认手动测试将始终保持重要地位,但对自动化测试的需求却在不断增长。自动化测试为公司和团队带来许多好处:效率更高,覆盖面更广。本文分享测试自动化策略的周期的7个阶段中的一些最佳实践,以最大限度地提高自动化测试的效能。

建立自动化测试计划

每个成功的项目都始于一个有利且明晰的团队战略目标,自动测试也不例外。为了拥有强大的测试自动化策略,请将自动化粗诶和功能测试团队置于一定范围内,并进行比较分析。在这里,团队应该在评估可用资源和潜在风险的同时定义自动化测试和功能测试优先级的范围。评估之后,团队可以确定特定时间范围的行动方案以及每个行动的优先程度。

注意事项:

  • 尽早计划测试自动化。自动化需要获取硬件和软件方面的资源,这可能会成为瓶颈。因此,建议提早进行计划,避免超出可承担的范围。
  • 并非所有测试用例都可以自动化。具有自动化测试结果的测试用例应该具有明确的结果耗时偏多手动失败率高稳定的功能。推荐的自动化测试是单元测试API测试回归测试数据驱动测试和**跨浏览器测试**。
  • 相反,应该手动完成的测试用例是UX测试探索性测试为何如此重要?应用程序可访问性测试不稳定的功能测试,因为它们的成本很高,而且不具备稳定的功能可验证性和有效性。

选择自动化测试方法

选择合适的自动化方法是构建健壮且可维护的自动化测试用例的基础。团队可以选择的自动化框架:模块化框架线性框架库体系框架数据驱动框架混合框架。由于自动化测试方法依赖于软件开发的实现方法,因此选择自动化测试的过程方法也至关重要。

注意事项:

  • 风险分析,对于业务风险、上线风险、代码风险等等要提前考虑。
  • 合适的人,保持与应用程序的业务需求的联系。此外,考虑在内部还是将软件测试外包的选择。
  • 复查测试工作。随着业务优先级随时间变化,测试人员应确保测试计划与设计的功能保持一致。此外,测试计划应有充分的文档记录。

获取测试工具

由于测试用例是自动化的,因此很容易理解为什么自动化测试依赖自动化测试工具。目前市场上有数十种工具可供使用,因此测试团队可以选择的并不多。团队应该制定一个自动化工具策略,并提出有关可用资源和需求的广泛问题。该工具应该解决现在存在的问题,而不是改变测试团队去适应该工具。

注意事项:

  • 不要急于使用最流行的自动化测试工具。相反,应该从自身的需求和资源为着力点,去筛选测试工具。
  • 如果团队拥有足够的编码能力,web端自动化推荐使用Selenium,移动端可以使用APPium或者UiAutomatorAPI接口测试可以选择postman或者JMeter或者其他测试框架。他们适应常用的测试语言、平台和操作系统。请注意,测试人员必须具有广泛的编程专业知识,并且这些工具通常不提供应用内数据分析功能。
  • 利用免费和试用。除了诸如SeleniumAppium之类的开源工具外,大多数商业自动化测试工具提供免费咨询,以通过技术和商业信息为工具选择过程提供支持。为了具有不同程度的专业知识的测试团队顺利过渡,强烈建议使用免费的无代码工具。

设置自动化测试环境

此阶段是自动化策略中的重要组成部分,因为这是计划开始实施生效的地方。在此步骤中,测试团队需要检查测试环境配置,并获取自动化测试所需的自动化工具。尽管测试的发展是不可预测的,但是测试环境的稳定性是成功实现测试自动化最重要的因素。

注意事项:

  • 为了确保一致性,开发和测试环境应与阶段环境相同,而预上线阶段环境应与生产环境相同。
  • 将数据视为测试用例的一部分,例如对数据进行排序的位置,是否应屏蔽脏数据,测试后数据会发生什么变动都需要着重考虑。
  • 在编写测试用例之前,请定义一套兼容性实践规则,以确保它们可以抵抗系统的更改。

设计测试自动化

一旦有了策略,工具和环境,就可以编写测试脚本了。测试版本应与软件开发平行,以与应用程序变更保持同步。在设计测试用例时,请记住遵循正确的测试模块顺序,并涵盖正向流程和负向流程,这涵盖了未经授权进入软件或任何无效数据在整个应用程序中的流动。

注意事项:

  • 请尽量采用行为驱动开发。通过使用用户操作编写测试要求和脚本,该框架可以有效地降低测试用例的数据产生的成本和维护性维护成本。
  • 数据驱动测试的可重用性。通过使用数据驱动的方法,只需更改外部文件中存储的数据即可生成测试用例。
  • 在添加到回归用例之前,请确保多次运行并验证它以确保特定测试用例的质量。

执行测试自动化

执行自动化测试将所有准备工作都将变为现实。由于此步骤是自动化的,所以可以通过各种形式运行以获取最近的测试结果。还可以遵循一些管道来提高发布速度,且同时保持质量。

注意事项:

  • 并行不需要相互依赖的自动测试用例,以节省时间。参考:Selenium并行测试基础Selenium并行测试最佳实践
  • 使用调度工具并行执行测试用例。利用云环境执行测试而无需事先进行大量配置,还可以自动确定基本测试的优先级,因此测试人员可以在保持高质量的同时缩短测试周期。
  • 在稳定的服务器和网络连接下对应用程序进行测试,避免意外的故障导致浪费时间获取错误的测试报告。

结果分析

最后的步骤中,测试团队应该制定计划以分析失败的测试用例,并采取后续措施来修复检测到的问题。通知测试人员和修复错误所需的时间通常比预期的长,而且随着项目进行,复杂度的升高,测试人员需要花费更多的时间来维护测试用例。

注意事项:

  • 识别响应缓慢和超时失败的测试用例。在测试用例运行中添加计时器,以选择连续失败或需要更长时间的测试。这种做法可帮助团队定位瓶颈并重新配置这些测试的活动,从而最大程度地提高测试效率。
  • 将测试结果与以前版本中经过验证的报告和文档进行比较,以扩大覆盖范围。
  • 结合测试报告内容进行针对性的改进。

公众号FunTester,原创分享爱好者,腾讯云、开源中国和掘金社区首页推荐,知乎八级强者,欢迎关注、交流,禁止第三方擅自转载。

0 人点赞