现在我用它来运行测试。我在命令行中输入了浏览器的名称和帮助流的数量。 pytest-xdist
def __init__(self, browser):
desired_capabilites = None
comand_executor = "http://localhost:4444/wd/hub"
if browser == "chrome":
desired_capabilites = {
"browserName": "chrome",
"maxInstances": 5
}
elif browser == "firefox":
desired_capabilites = {
"browserName": "firefox",
"maxInstances": 5
}
self.driver = webdriver.Remote(
command_executor=comand_executor,
desired_capabilities=desired_capabilites)
但是在我看来,这种方法有几个缺点:
java -jar selenium-standalone-server.jar
)-要在不同的浏览器中测试所有内容是否可以通过某种方式自动启动服务器?
以及如何在不同的浏览器中并行运行测试?
一个很好的选择是创建两个节点并在两个节点中同时运行测试。或在一个节点中创建多个不同的浏览器并启动它们。但是我不知道如何。预先感谢您的帮助
答案 0 :(得分:0)
您可以通过两种方式处理此问题。
获取一个云实例或服务器,您可以在其中启动硒网格并使用服务器URL对其进行访问。这样您就无需在完成测试后重新整理服务器。
如果要自动化整个设置和去皮过程,可以使用Jenkins并配置Jenkins,以便可以在运行测试之前设置整个网格,并在完成测试后去皮。
如果您使用的是黄瓜,则可以将测试用例标记为@Chrome和@FF,并且当您执行远程浏览器时,使用if case.tagName.equals(Chrome)然后在节点中运行或启动具有chrome功能的remotedriver