自动化工具 Selenium 怎么能够做到将不同的测试用例,分发到不同的平台同时执行呢

冷月醉夕阳 · 2018年10月15日 · 最后由 一枚小菜鸡 回复于 2020年04月03日 · 1807 次阅读

目前只知道 selenium 有提供 grid,但主要是功能是多节点执行同一批测试用例,比如浏览器兼容性测试等,好像并不能解决同一批测试用例分发到不同的机器上面运行,然后收集报告, 只能做到同一批用例 copy 到其他节点上面运行(但这个主要是测试兼容性)

顺便补充一下,我项目环境用的是 python

或者是要借助多线程????

共收到 18 条回复 时间 点赞
群主是狗 回复

我现在要用 pytest+selenium 来并发,能提供下你之前并发的思路吗

仅楼主可见

跑 Appium 脚本,8 台手机一共跑 500 个网址
每台手机跑自己单独的一部分网址

群主是狗 回复

哦,并发跑 UI?

哦。。。我理解错了。。。。我目前是 pytest 在一个机器上跑的

群主是狗 回复

继续再请教下,pytest 可以指定路径,但 xdist 只能在一台机器上面并发,不能将 case 分发到多台机器上面吧,一个机器上面的话,跑 UI 的话,并发起来担心受干扰,稳定性可能没那么好

Lee 回复

蒽 ,这也是一种思路

佳佳 回复

pytest 我觉得应该可以, 我有空去试下, unittest 应该也可以,但没那么方便

好像有个 ptest 支持并发的😂 没试过,哈哈哈哈

利用 jenkins 可以试试,大不了弄成几个脚本,同时运行

我用的 allure,pytest 的时候指定路径,就能在一个路径下展现所有的报告了

12楼 已删除
群主是狗 回复

这个思路跟我们之前做平台时,有点类似,但是这里还涉及到报告的问题,该怎么收集呢??

7楼 已删除
川流不息 回复

这个库还没怎么玩过,之前有了解过,一时半会还想不到好的方案

我是用的切片
把测试用例切成好几片,每个设备找自己的那片运行就行了

尝试下 celery 做分发

python 的我就不太熟悉了

孙高飞 回复

非常感谢回复, 不过我是用 python unittest 写的,现在也好久没用 testng 了

利用 testng 的并发能力就可以了。 如下:

它会把不同的 case 分发到不同的浏览器上去

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册