如何提高UI自动化的稳定性

embedded/2024/9/24 6:40:16/

用例层面:

1. 将用例设计成参数化,将测试数据通过参数进行传递

2. 对于一些可能会变化的参数,将其设计成全局变量,减少维护用例的成本

3. 对用例之间避免产生依赖,可以独立执行

框架层面:

1. 使用PO设计模式和关键字驱动

2. 在BasePage中封装一些通用的方法

3. 将元素的基本操作封装成关键字

4. 将不同的页面设计成一个类,在类中将页面中的操作封装成方法,可以将页面元素和操作方法分离,降低代码的耦合性,也能提高代码的可读性

5. 添加失败重试,可以过滤掉很多因网络不稳定或环境不稳定导致的用例失败

6. 加入api自动化,对于数据的构建可以通过调用api接口的方式完成

失败记录:

1. 对于失败的用例,将失败的原因进行记录,判断失败的类型:用例不稳定、环境问题、产品问题等

2. 对于用例问题要及时修正,并且尽可能避免再次出现


http://www.ppmy.cn/embedded/115957.html

相关文章

照片写真记录摄影作品记录网站源码

完美适应iPad,平板,手机竖屏不支持lazy,横屏可以,但建议使用平板查看效果, 有服务器直接上传解压使用,环境nginxphp, 没有服务器也没关系,可以直接使用html

滚动轴承故障诊断、预测与分类综合数据集

独家整理 滚动轴承数据集 故障诊断,预测、分类 最全套数据集 可做对比实验 拍就发自动发货 1.CWRU西储大学轴承数据集 2.MFPT机械故障协会数据集 3.XJTU西安交通大学数据集 4.渥太华变速轴承轴承数据集 5.江南大学轴承数据集 滚动轴承故障诊断、预测与分类综合数据集…

Golang | Leetcode Golang题解之第题432题全O(1)的数据结构

题目: 题解: type node struct {keys map[string]struct{}count int }type AllOne struct {*list.Listnodes map[string]*list.Element }func Constructor() AllOne {return AllOne{list.New(), map[string]*list.Element{}} }func (l *AllOne) Inc(ke…

TMStarget学习——T1 Segmentation数据处理及解bug

最新学习季公俊老师的神器 TMStarget 的第一个模块基于结构像的靶区计算T1 segmentation。下面上步骤: (1)在github 上下载 TMStarget https://github.com/jigongjun/Neuroimaging-and-Neuromodulation (2)按照要求下载依赖工具软件AFQ、vistasoft、SPM12 &#…

基于单片机巡迹避障智能小车系统

文章目录 前言资料获取设计介绍设计程序具体实现截图设计获取 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们…

dedecms——四种webshell姿势

姿势一:通过文件管理器上传WebShell 步骤一:访问目标靶场其思路为 dedecms 后台可以直接上传任意文件,可以通过文件管理器上传php文件获取webshell 步骤二:登陆到后台点击【核心】--》 【文件式管理器】--》 【文件上传】将准备好…

签署《AI安全国际对话威尼斯共识》 智源持续推动人工智能安全发展

近日,由AI安全国际论坛(Safe AI Forum)和博古睿研究院(Berggruen Institute) 共同举办的第三届国际AI安全对话(International Dialogues on AI Safety)在威尼斯举办。图灵奖得主Yoshua Bengio、姚期智教授&…

html,js,react三种方法编写helloworld理解virtual dom

学习任何一个新语言&#xff0c;好像都从helloworld开始。&#xff1a;&#xff09;。 html helloworld 静态hello world <!DOCTYPE html> <html> <head><title>Hello World</title> </head> <body><p>Hello World</p&g…