首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多量角器实例

多量角器实例
EN

Stack Overflow用户
提问于 2019-03-15 17:10:08
回答 1查看 303关注 0票数 1

我有一个web服务器在我们公司的内部网,将允许用户提交URL,以测试使用Protractor。

所有测试都将在此服务器上运行,方法是让PHP为提交的每个URL编写一个config.js文件,并使用shell_exec运行protractor conf[generated-id].js

我想一次运行多个量角器测试,以便更快地处理URL队列。

这些URL代表了我们产品的不同版本,所以它们非常相似。

用这种方式同时运行量角器是否安全?这些测试有可能以某种方式互相干扰吗?

我对Selenium不感兴趣,因为我希望在这台机器上运行所有的测试(每次2-3次,所以我想保持简单)。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-16 21:27:05

据我理解,测试应该是独立的,同时运行多个实例不应该导致问题。

这个答案的其余部分假设:

  • 您没有设置directConnect
  • 在每个浏览器上执行的测试是相同的。
  • 除URL外,正在创建的conf文件的内容是相同的

有几件事很重要,需要知道:

  1. 如果配置seleniumAddress: 'http://localhost:4444/wd/hub',中没有指定selenium服务器地址,那么它将在完成时自动启动并关闭。
  2. selenium服务器启动的每个浏览器都有一个关联的唯一selenium会话ID。
  3. 在自动测试期间发送到浏览器的所有操作实际上都与目标浏览器的会话id一起发送到selenium服务器,命令类似于下面的/session/:sessionId/element/:id/click。webdriver背后的底层技术是网络驱动线协议,它确保命令只到达所需的浏览器。
  4. selenium服务器可以在任何时候拥有多个活动浏览器。

尽管如此,我想知道是否可能没有一种更简单的合适方法,而是将URL作为参数传递。您的测试将使用browser.get(browser.params.targetURL),运行的命令将是protractor conf.js --params.targetURL www.URLToUse.com

但是,如果如您的问题中所述,URL被提交并简单地排队等待稍后运行,那么您可以编写一个数据驱动的测试,它将遍历一个URL列表并在每个URL上运行相同的测试。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55187622

复制
相关文章

相似问题

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