UI自动化测试常见的问题
1)产品UI经常变化,导致测试脚本不能复用。
(2)测试脚本不够健壮,导致脚本回放时,测试脚本本身经常出错。
(3)网络延迟,数据加载延迟造成测试脚本失败。
(4)识别对象的ID可读性差,导致测试脚本的可读性差。
(5)录制的测试代码过于庞大而且应变性差,导致测试脚本的复用性差。
(6)测试环境、user、user密码等常用信息的变更需要在脚本中修改,增加了测试脚本出错的风险。
(7)生成的测试报告不能满足需求。
自动化架构设计中最实用的两点
但是随着UI自动化测试工具可选性越来越多,工具的易用性越来越强,也越来越稳定,前几年关于自动化测试架构设计的概念逐渐淡化,目前自动化架构设计中最实用的两点就是:
PO设计模式思想+对核心业务进行封装复用
无论您用selenium、appium还是playwright都必须使用PO设计模式-CSDN博客
自动化测试架构设计必会知识点——对核心业务进行封装复用(附Java源码)-CSDN博客
希望刚入门自动化测试领域的小白深刻掌握
接下来我们简单的总结一下自动化架构设计都包括哪些内容:
自动化架构引入的原因
提升脚本的稳定性+功能扩展(包括:邮件功能+报告展示功能+文件打包功能等等)
开源工具的选择
- 想提升编码技能
web浏览器和手机浏览器应用:Selenium\Playwright
Android和IOS应用:Appium
建议大家选择Selenium、Playwright或者Appium,行业现状是测试人员需要有代码编写的能力,而编写自动化测试脚本是测试人员最好的上手编码实践项目,没有之一!!!
- 无需编码技能
浏览器、android和IOS应用:Robot Framework
测试框架的选择
我们的测试用例脚本需要在测试框架中实现,不同的编程语言有不同的测试框架,对应关系如下:
Java: Junit3\Junit4\ Junit5\TestNG
Python: unittest\pytest
C++: CppUnit
.net: Nunit
JavaScript: Qunit
不同的框架会有不同的实现表达形式,也会提供不同的额外功能来满足不同的测试需求,但是灵魂的东西都是一样的,总结起来就是以下四点:
约定测试用例的编写规则;
校验用例通过与否的方法(断言);
批量运行用例
通过测试报告查看测试结果;
自动化测试脚本管理
代码管理选择工具git,没有什么多说的
架构设计完整思路
1.根据公司应用选工具,如果是web产品就选selenium 或者playwright,android或者ios应用就选appium
2.跟据团队成员编码能力选择编码语言,python和java都可以(selenium \playwrigh\appium都支持)
3.选择代码管理工具git
4.跟据选择的编码语言确认与之对应的测试框架(TestNG,Pytest等等)
5.在测试框架中编写测试用例,通过断言校验用例的通过与否
6.在框架中引入PO设计模式+对核心业务进行封装复用 来提升脚本的复用度
7.使用测试框架提供的报告作为测试依据
8.如果需要在持续集成环境中引入测试环节,只需要调用批量执行入口脚本即可
如果大家想了解更多自动化架构设计的内容可以参考文章:
面试自动化测试架构时必须知道的事儿_软件测试面试讲业务后端架构-CSDN博客
我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!