以下列出5种造成GUI自动化测试不稳定的主要银色,并给出相应的解决思路:
1、对于非预计的弹出对话框引起的不稳定,可以引入“异常场景恢复模式”来解决。
具体做法:当自动化脚本发现控件无法正常定位,或者无法操作时,GUI 自动化框架自动进入“异常场景恢复模式”。在“异常场景恢复模式”下,GUI 自动化框架依次检查各种可能出现的对话框,一旦确认了对话框的类型,立即执行预定义的操作(比如,单击“确定”按钮,关闭这个对话框),接着重试刚才失败的步骤。
2、对于页面控件属性的细微变化造成的不稳定,可以使用“组合属性”定位控件,并且可以通过“模糊匹配技术”提高定位识别率。
目前,一些商用 GUI 自动化测试工具,比如 UFT,已经实现了模糊匹配。通常情况下,你只需要启用“模糊匹配”选项即可。如果某个对象的定位是通过模糊匹配完成的,那么,测试报告中将会显示该信息,明确告知此次对象识别是基于模糊匹配完成的,因为 GUI 自动化工具并不能保证每次模糊匹配都一定正确。
3、对于 A/B 测试带来的不稳定,需要在测试用例脚本中做分支处理,并且需要脚本做到正确识别出不同的分支。
4、对于随机的页面延迟造成的不稳定,可以引入重试机制,重试可以是步骤级别的,也可以是页面级别的,甚至是业务流程级别的。
5、测试数据引起的不稳定