Appium 结合 TestNG 并行执行测试

Appium 测试框架可以让我们使用不同的编程语言(Java、Python、Ruby、JavaScript)测试不同移动端平台的应用(Android、iOS),目前也是最火的移动端测试框架。这篇文章会带着大家学习到如何在不同设备中并行执行测试。

并行执行测试能够带来的好处:

提升测试效率,我们可以将测试用例分发给不同的设备执行,从而可以减少整体测试所花费的时间

同时我们可以将相同的测试用例给不同的设备去执行,特别适合需要做兼容性测试的场景

Appium 本身并没有提供并行执行这样的功能,我们可以借助 Java 中最流行的 TestNG 单元测试框架所提供的功能实现。

1、TestNG简介

TestNG(Next Generation) 下一代单元测试框架技术,在这之前 Junit 在 Java 世界中是主流的选择,由于 TestNG 的强大和易用性,现在已逐步取代 Junit 成为最流行的单元测试框架技术。

TestNG 优点

TestNG 与 Junit 是比较类似的,但是与其相比提供了更为强大的特性并且更加易用,包括不仅限于

  • 更加丰富的注解

  • 超时、异常测试

  • 参数化测试

  • 并行测试

2、TestNG并行测试配置

TestNG 可以支持通过 XML 配置并发测试

如果你想学习自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386

【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1、接口自动化之为什么要做接口自动化、2、接口自动化之request全局观、3、接口自动化之接口实战等,UP主更多精彩视频,请关注UP账号。https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337&vd_source=488d25e59e6c5b111f7a1a1a16ecbe9a

两个关键配置:

  • parallel="{methods/classes/tests}"

    指定 methods/classes/tests 标签在同一线程中

  • thread-count="{你想要并发执行的线程数量}"

执行 TestNG.xml 文件,可以看到两个测试类会在同一时间并行执行测试。

3、TestNG结合Appium并发执行测试

Step1:开启多个 Appium Server,指定不同的监听端口3

Step2:adb 连接上多台设备

这里以夜神的多开功能演示,默认第一台夜神模拟器端口 62001,第二台端口 62025,第三台 62026...

多台真机只需打开 USB 调试模式,勾选弹框即可

Step3:编写测试脚本

Step4:TestNG.xml 文件配置

运行效果:

相关推荐
我材不敲代码3 小时前
Python实现打包贪吃蛇游戏
开发语言·python·游戏
身如柳絮随风扬4 小时前
Java中的CAS机制详解
java·开发语言
0思必得05 小时前
[Web自动化] Selenium处理动态网页
前端·爬虫·python·selenium·自动化
韩立学长5 小时前
【开题答辩实录分享】以《基于Python的大学超市仓储信息管理系统的设计与实现》为例进行选题答辩实录分享
开发语言·python
qq_192779875 小时前
高级爬虫技巧:处理JavaScript渲染(Selenium)
jvm·数据库·python
u0109272715 小时前
使用Plotly创建交互式图表
jvm·数据库·python
爱学习的阿磊5 小时前
Python GUI开发:Tkinter入门教程
jvm·数据库·python
froginwe115 小时前
Scala 循环
开发语言
m0_706653236 小时前
C++编译期数组操作
开发语言·c++·算法
故事和你916 小时前
sdut-Java面向对象-06 继承和多态、抽象类和接口(函数题:10-18题)
java·开发语言·算法·面向对象·基础语法·继承和多态·抽象类和接口