在游戏自动化测试技术落地过程当中,如何保证自动化测试的稳定性,是一个需要重点优先解决的困难问题。
以手机游戏客户端自动化测试为例,和一般服务架构的自动化单元测试或集成测试不同,自动化驱动的过程,其本质更加类似于网络爬虫,每次测试执行都是一个时间较长的过程,而流程一长,不稳定因素则随之而来。游戏自动化的整个过程,大致是这样的:
- 前置环境准备(setup):设置用例运行环境、设备状态与玩家状态,保证用例运行的条件
- 用例脚本执行(run):执行自动化用例脚本
- 后置恢复操作(teardown):恢复测试环境、设备状态与玩家状态
- 测试报告输出(report):整合跑测期间游戏的运行数据与用例脚本收集/导出的数据,生成测试报告
要分析如何保障整个自动化过程的稳定性,我们可以根据这几个步骤进行细节切分,对每一个环节影响稳定性的因素逐个理顺,从而最终,我们就可以得到一整套自动化稳定性保障的解决方案。在这四个步骤当中,前置环境准备和用例脚本执行这两步,对自动化流程稳定性的影响面最大,而最后面两步的影响程度,则相对较低。