2.1selenium集成docker进行多线程运行脚本

========================================

1、输出的日志分开版

========================================


多线程py脚本

python.exe robot_duoxiancheng.py F:\bingfa node1,node2,node3


========================================

2、输出的日志汇总版

========================================


多线程脚本

python.exe robot_duoxiancheng.py F:\test.txt node2,node1


脚本robot_duoxiancheng.py接收两个参数,

第一个,实行的测试套件或文件夹,

第二个,以逗号分隔的多个标签,然后有多少个标签,就启动多少个线程

根据不同的标签实行 pybot -i tag的命令,至于怎么使用python的多线程这里就不用多说了,大家估计比我还熟悉。

最后所有自动化测试的线程都结束之后实行rebot的命令来合并自动化测试报告。

========================================

以下是测试脚本

========================================


上面有2个浏览器就是通过VNC viewer来连接到容器中查看远程浏览器的情况的,在连接到selenium gird的时候,gird会自动判断哪个浏览器是空闲的,那gird就会把用例分配到对应空闲的浏览器中实行

大概并发的自动化测试就实现了,当然这里还有一个注意的地方,就是实行用例失败之后的截图,如果是多线程实行的话,截图也是多线程的,线程1产生的截图1命名为selenium-screen-1.png,线程2也会产生的截图1命名为selenium-screen-1.png,那这样线程2的截图就会把线程1的截图给覆盖了,那解决办法是,既然用到线程,那肯定有线程或进程id的,那就在图片命名中加一个线程id号和当前时间就能解决问题了,具体的就是在selenium2library中的_screenshot.py:


推荐阅读更多精彩内容