1、如何提升webui自动化的稳定性
1·导致ui自动化不稳定的因素
1.1 web页面的多变
1.2 页面隐藏元素
1.3 页面元素加载不稳定
1.4 系统业务复杂
1.5 ajax请求问题
1.6 测试环境数据准备问题
2·解决问题的各种方法
1.从自动化框架解决问题
1.1设置显式等待
重写selenium的底层接口,加入显式等待,设置等待条件及异常处理;
1.2等待页面加载稳定
重写selenium的底层接口,定位元素前需要先等待页面加载稳定,页面加载稳定的判断条件为"页面源码在限定时间内不再发生变化";
1.3过滤隐藏元素
重写selenium的底层接口,在selenium判断的基础上,过滤掉页面特殊的隐藏元素,增强脚本容错性;
1.4设置xhr请求等待
重写selenium的底层接口,在脚本开启代理的情况下,判断xhr请求是否都已经响应,此处可作为选配仅在脚本开启代理时作判断
1.5继承requests模块
传统的webui框架结构时测试报告模块+日志模块+项目配置文件模块+unittest模块+selenium模块,可以在此基础上集成requests模块。
requests模块提供接口请求、获取响应内容、解析响应内容的基本封装。
2.从设计模式解决问题
2.1采用pom设计模式
a.页面元素在发生变化时,我们仅需从底层修改对应页面对象,大大降低了后期的维护成本;
b.将复杂的业务逻辑划分成多个细小单元,通过组织这些细小单元形成我们的业务代码,增强代码的复用性,提高效率;
c.统一代码风格,减少个人不良的代码习惯对脚本稳定性的影响;
2.2通过requests模块完成环境数据准备
a.提高脚本执行效率
b.减少脚本在非用例验证点的地方提前报错,提升脚本容错率
c.增强脚本可操作性,便捷获取业务系统的一些关键数据,减少ui操作
标签:脚本,Web,面试题,selenium,接口,模块,自动化,requests,页面 From: https://www.cnblogs.com/testerxm/p/17312266.html