一,自动化脚本可能出错的原因?
1)配置环境引起
*自动化测试脚本的配置。
*对测试程序进行配置。如:是否还原初始设置、是否删除某些数据。
*对浏览器进行配置。
*对与测试程序有关的程序或影响脚本稳定性的程序进行配置。
2)非配置环境引起
*网络延时,识别对象的同步问题。
*未知因素引起脚本失败。
*未知因素引起脚本运行中断。
*自动化脚本本身使用了不稳定的因素。
*脚本的继承性,上个脚本失败导致了下一个脚本也失败。
二,提高稳定性
1)提高脚本的稳定性,既要满足稳定的要求,又要兼容不同的环境、平台等
2)稳定性,即自动化的脚本能重复使用,且脚本不报错,系统报错除外
3)兼容性,即是能在不同的平台、环境下运行
三,解决方案
1)测试环境:提升环境稳定性,包括自身环境稳定性和第三方系统环境稳定性(将测试环境独立出来,可灵活配置运行环境)。
2) 测试数据:脚本运行前,后对数据进行清理;避免数据固化,实现数据的可配置化和集中维护,或者通过依赖其他接口的动态生成,可避免固化数据的失效。
3) 元素定位脚本:元素定位时可考虑多元素定位方法。
多个元素定位:find_elements() 获取的对象是一个列表,可以根据它的 索引来定位。
tags=driver.find_elements(By.TAG_NAME,'input')
tags[7].send_keys('admin')
4) 方法脚本:多考虑可能出现的异常,避免脚本报错直接退出;脚本异常处理,加入失败重跑机制;异常捕获处理,有异常跳过、或标记。
5)用例脚本:确保用例的完整性、独立性,可耦合,可独立运行;Windows、Linux环境下文件路径要做兼容,因为两个系统获取文件路径的方式不一致。
6)其他:依赖第三方服务的接口需要设置合理的超时时间;持续验证,保持一定的运行频率,比如每日巡检等,避免因长时间未运行和自身脚本成熟度不够高,导致阶段性维护时间过长。
网友评论