Robotframework 如何在robot框架中参数化Open Browser关键字以从命令行运行headless?
打开浏览器${REMOTE_URL}${HEADLESS}Robotframework 如何在robot框架中参数化Open Browser关键字以从命令行运行headless?,robotframework,Robotframework,打开浏览器${REMOTE_URL}${HEADLESS} 我想通过命令行将headlesschrome值传递给openbrowser关键字如果您想让chrome headless正常工作,下面的代码应该正常工作。 当您想要参数化时,则禁止此文档- 创建所有变量并将其存储在一个文件中,然后在调用以下任何代码时使用以下语法,或者从命令行传递相应的name:value(如下所示),以便在robot代码中使用相同的值 robot -v <<variable file>> *.r
我想通过命令行将headlesschrome值传递给openbrowser关键字如果您想让chrome headless正常工作,下面的代码应该正常工作。 当您想要参数化时,则禁止此文档- 创建所有变量并将其存储在一个文件中,然后在调用以下任何代码时使用以下语法,或者从命令行传递相应的name:value(如下所示),以便在robot代码中使用相同的值
robot -v <<variable file>> *.robot
OR
robot -v name:value *.robot
代码
使用OpenBrowser Headless
*** Settings ***
Library Selenium2Library
*** Test Cases ***
Test title
${options}= Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
Call Method ${options} add_argument --headless
#my_create_webdriver Chrome ${options}
Open Browser http://google.com Headless Chrome
# create webdriver Chrome chrome_options=${options}
Maximize Browser Window
go to https://google.com
Maximize Browser Window
capture page screenshot
close browser
输出
更好的方法
Xvfb是X窗口系统的无头显示服务器,如果让chrome/firefox运行无头,为什么不使用下面的方法呢
安装Robot框架的XvfbRobot库,这是一个用于创建虚拟显示的Robot库,可用于在无头模式下运行selenium测试
pip install robotframework-xvfb
范例
*** Settings ***
Documentation This example demonstrates how to use current library
Library Selenium2Library
Library XvfbRobot
*** Test Cases ***
Create Headless Browser
Start Virtual Display 1920 1080
Open Browser http://google.com
Set Window Size 1920 1080
${title}= Get Title
Should Be Equal Google ${title}
[Teardown] Close Browser
你能检查一下下面的表吗。我是否可以从终端参数化Xvfb?例如:robot-variable BROWSER:headlesschrome tests.robot您需要遵循链接中提到的相同步骤。您将能够做到这一点,只需遵循代码。
(rf2) C:\Users\kgurupra>robot sa.robot
==============================================================================
Sa
==============================================================================
Test title ..
DevTools listening on ws://127.0.0.1:54461/devtools/browser/ff94b77f-b963-428f-835e-f5e1932a1915
Test title | PASS |
------------------------------------------------------------------------------
Sa | PASS |
1 critical test, 1 passed, 0 failed
1 test total, 1 passed, 0 failed
==============================================================================
Output: C:\Users\kgurupra\output.xml
Log: C:\Users\kgurupra\log.html
Report: C:\Users\kgurupra\report.html
pip install robotframework-xvfb
*** Settings ***
Documentation This example demonstrates how to use current library
Library Selenium2Library
Library XvfbRobot
*** Test Cases ***
Create Headless Browser
Start Virtual Display 1920 1080
Open Browser http://google.com
Set Window Size 1920 1080
${title}= Get Title
Should Be Equal Google ${title}
[Teardown] Close Browser