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博客

我的每一篇文章都希望帮助读者解决实际工作中遇到的问题!如果文章帮到了您,劳烦点赞、收藏、转发!您的鼓励是我不断更新文章最大的动力!