首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于webdriver驱动程序的分布式测试

基于webdriver驱动程序的分布式测试
EN

Stack Overflow用户
提问于 2014-03-03 23:21:30
回答 1查看 1.4K关注 0票数 1

我读过,使用网格,我们可以跨多个节点分发测试。

假设我有4个测试用例和2个节点(都有相同的配置、平台:窗口、浏览器:火狐和maxSession=1,maxInstance:1),我希望在节点1和节点2上运行两个测试用例。

但是当我运行时,我看到所有4个测试用例都运行在节点1或节点2上,这是基于谁最后注册的。我两个人都注册过不同端口的漏洞。

我对每个节点运行2次测试的理解是正确的,还是说这不可能?

如何实现WebDriver的分布式测试?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-03-03 23:38:04

我认为您的意思是并行执行(即分布式测试)?Selenium grid将提供以分布式方式运行这些测试的体系结构(即跨多个节点分发测试执行),但您仍然需要并行地触发这些测试。

目前您的测试是按顺序触发的,因此Selenium Grid集线器利用了它获得的第一个可用节点,这是第一个节点(原因很明显)。

要快速可视化selenium如何通过并行执行获益,请打开4个命令提示/终端,并在4个测试中的每个触发器中打开1个。如果您只有两个节点,并且每个节点只能运行一个浏览器,您将看到

  • 节点A-测试1
  • 节点B-测试2
  • 等待空闲/可用节点{Test 3和Test 4}

然后,取决于哪个测试(1或2)首先完成执行,该节点获得空闲,而test 3将在该节点上启动。

当然,您需要以编程方式并行触发这些测试。

在python中,可以使用nose并触发测试运行,如下所示:

代码语言:javascript
复制
nosetests --processes=2 allmytests #Starts 2 processes
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22159679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档