我是Selenium、TestNG和Selenium Grid的新手。我对何时需要使用Selenium Grid有点困惑。以下是我对此的理解。如果我是对的,请告诉我:
所以我所理解的是,Selenium网格的目的不是并行执行。它用于远程执行。通过TestNG实现并行执行。仅使用Grid是不可能实现并行执行的。这是正确的吗?
您的结论非常正确,即Selenium Grid的目的是在远程机器上远程执行测试。分发测试的两个主要原因是:
根据远程WebDriver的官方文档:
您可以像在本地一样远程使用WebDriver。主要区别在于需要配置远程WebDriver,以便它可以在单独的机器上运行您的测试。
远程WebDRiver由两部分组成:服务器和客户端。客户端是WebDRiver测试,服务器只是一个Javaservlet,可以托管在任何现代JEE应用程序服务器中。
远程WebDRiver服务器将始终在使用您要测试的浏览器的机器上运行。可以从命令行(或通过代码配置)启动服务器。
要运行远程WebDRiver客户端,您必须首先连接到远程WebDRiver。我们通过将URL指向运行我们测试的服务器的地址来做到这一点。
您需要遵循以下提到的步骤:
>
启动Selenium Grid Hub:
java -jar selenium-server-standalone-3.141.59.jar -role hub
生成的日志:
18:10:13.310 INFO [GridLauncherV3.parse] - Selenium server version: 3.141.59, revision: e82be7d358
18:10:13.618 INFO [GridLauncherV3.lambda$buildLaunchers$5] - Launching Selenium Grid hub on port 4444
2020-01-02 18:10:14.605:INFO::main: Logging initialized @2136ms to org.seleniumhq.jetty9.util.log.StdErrLog
18:10:15.504 INFO [Hub.start] - Selenium Grid hub is up and running
18:10:15.509 INFO [Hub.start] - Nodes should register to http://192.168.1.125:4444/grid/register/
18:10:15.510 INFO [Hub.start] - Clients should connect to http://192.168.1.125:4444/wd/hub
通过以下网址访问 Selenium 网格控制台 v.3.141.59 http://localhost:4444/grid/console
:
> < li>
启动Selenium网格节点:
java -Dwebdriver.chrome.driver=chromedriver.exe -jar selenium-server-standalone-3.141.59.jar -role node -port 7777 -hub http://192.168.1.125:4444/grid/register
生成的日志:
18:33:55.959 INFO [GridLauncherV3.parse] - Selenium server version: 3.141.59, revision: e82be7d358
18:33:56.112 INFO [GridLauncherV3.lambda$buildLaunchers$7] - Launching a Selenium Grid node on port 7777
2020-01-02 18:33:56.584:INFO::main: Logging initialized @983ms to org.seleniumhq.jetty9.util.log.StdErrLog
18:33:56.913 INFO [WebDriverServlet.<init>] - Initialising WebDriverServlet
18:33:57.029 INFO [SeleniumServer.boot] - Selenium Server is up and running on port 7777
18:33:57.029 INFO [GridLauncherV3.lambda$buildLaunchers$7] - Selenium Grid node is up and ready to register to the hub
18:33:57.195 INFO [SelfRegisteringRemote$1.run] - Starting auto registration thread. Will try to register every 5000 ms.
18:33:57.734 INFO [SelfRegisteringRemote.registerToHub] - Registering the node to the hub: http://192.168.1.125:4444/grid/register
18:33:57.856 INFO [SelfRegisteringRemote.registerToHub] - The node is registered to the hub and ready to use
通过urlhttp://localhost:4444/grid/console
再次访问Selenium Gridhtml" target="_blank">控制台v.3.141.59以查看注册节点:
https://imgs.xnip.cn/cj/n/8/800e95af-d90c-4538-b317-33451dbc1f6b.png" width="100%" height="100%" />
团队, 使用continueAsNew的确切用例是什么? 由于我们支持Cron附表进行定期活动,我不知道使用它的场景。 我们这样做是为了提供向后兼容性吗
我正在尝试设置硒网格以实现测试的并行执行。首先,我将解释我当前的场景。 < li >我用watir webdriver在cucumber中编写了我的全功能测试套件 < li >我需要在多个环境中执行所有测试。 < li >我为selenium hub和node创建了一个设置 < li >我可以通过hub在单个节点上运行我的测试 我的目标是在多个虚拟机上同时运行我的测试。我遗漏了一部分,我需要配置我
问题内容: 我正在学习java nio包,我意识到File已经提供了很多方法,而nio.Files通过使用Path类再次提供了这些方法。像我再得到的那几个。我实际上没有得到nio包的实际用途。 我对这个软件包非常陌生,所以可能我的问题是错的,但是一点帮助可以使我进一步阅读。 问题答案: IO和NIO之间的主要区别是IO正在阻塞,而NIO是非阻塞。 本文介绍了程序包中的差异以及什么是阻塞和非阻塞IO
从这里下载selenium-server-4.0.0.jar之后 我将这个jar文件放在c文件夹中,然后使用cmd命令尝试使用这个命令启动selenium grid hub 我无法运行selenium网格中心,它显示以下内容 我试着把这个网址放在chrome浏览器中 然后它显示这个
问题内容: 我不了解Java的这一功能。我知道它使编码更容易,有时看起来更整洁,但这的实际用途是什么?相反,我觉得最好显示警告,因为将来任何人在修改代码之前都可以引用它们。这@SuppressWarnings是否提高了编译效率,还是根据任何编码标准? 问题答案: 其他答案已经解释了很多用例,但是我想强调一点, 有时您绝对需要使用它来克服语言本身的局限性,在这些情况下,使用绝对是合法的。 在其他情况
问题内容: java中有什么用? 请解释一下。 问题答案: 可能这个例子会帮助您。