我们如何使用 Ride 在 robotframework 中 运行 一次在不同浏览器上测试用例
How can we run test cases on different browser at once in robotframework using Ride
*** Settings ***
Library SeleniumLibrary
*** Variables ***
${url} https://www.youtube.com/
${browser} chrome
*** Test Cases ***
Search
[Template]
Open Browser ${url} ${browser}
Maximize Browser Window
注意:如果我们想在不同的浏览器上同时运行上面的测试用例。我们如何在机器人框架中处理它(是否可以与 sauce labs / browser stack 集成)。目前,我正在从命令行传递变量浏览器。例如:机器人 --variable BROWSER:Chrome Youtube.robot
但我想 运行 同时在不同的浏览器上使用它。
您将需要使用 Pabot 进行并行测试。并行 运行 它们的最简单方法是创建 3 个不同的测试用例并使用 --testlevelsplit
调用 pabot。但是,如果您不想复制测试用例,则可以使用 --argumentfile
选项。
您需要使用可以测试的变量创建尽可能多的文件。例如:
arg1.txt:
--variable browser:chrome
arg2.txt
--variable browser:ie
然后运行:
pabot --pabotlib --argumentfile1 arg1.txt --argumentfile2 arg2.txt -t "Search" <PATH_TO_TEST_DIR>
如果每个浏览器的测试用例都相同,除了它们 运行 所使用的浏览器之外,那么我建议使用编排工具,例如 Jenkins,CI,Bamboo等,以启动不同的浏览器测试 运行s。这样你就有了 1 个测试集,使用参数 files/global 变量可以启动特定的浏览器。在我看来,这是一个更具前瞻性的设置,然后为每个特定浏览器复制测试用例。
*** Settings ***
Library SeleniumLibrary
*** Variables ***
${url} https://www.youtube.com/
${browser} chrome
*** Test Cases ***
Search
[Template]
Open Browser ${url} ${browser}
Maximize Browser Window
注意:如果我们想在不同的浏览器上同时运行上面的测试用例。我们如何在机器人框架中处理它(是否可以与 sauce labs / browser stack 集成)。目前,我正在从命令行传递变量浏览器。例如:机器人 --variable BROWSER:Chrome Youtube.robot
但我想 运行 同时在不同的浏览器上使用它。
您将需要使用 Pabot 进行并行测试。并行 运行 它们的最简单方法是创建 3 个不同的测试用例并使用 --testlevelsplit
调用 pabot。但是,如果您不想复制测试用例,则可以使用 --argumentfile
选项。
您需要使用可以测试的变量创建尽可能多的文件。例如:
arg1.txt:
--variable browser:chrome
arg2.txt
--variable browser:ie
然后运行:
pabot --pabotlib --argumentfile1 arg1.txt --argumentfile2 arg2.txt -t "Search" <PATH_TO_TEST_DIR>
如果每个浏览器的测试用例都相同,除了它们 运行 所使用的浏览器之外,那么我建议使用编排工具,例如 Jenkins,CI,Bamboo等,以启动不同的浏览器测试 运行s。这样你就有了 1 个测试集,使用参数 files/global 变量可以启动特定的浏览器。在我看来,这是一个更具前瞻性的设置,然后为每个特定浏览器复制测试用例。