我有selenium网格与在robotframework中开始的测试中的本地和远程节点一起工作。我不想在机器人测试中控制selenium启动,我只是想让我访问一个使用网关的selenium节点,这是一个被测设备(DUT)。我想基本上在testbed1中的desired_criteria~ = mgmt,testbed1中的client-interface访问特定节点。每个测试台需要一个网格吗?我似乎需要将网格与特定的测试平台相关联,并为管理界面运行另一个selenium。
Client ----------- DUT --------- Server
node | | mgmt interface
192.168/24 | |
| |
localhost ---- 10.0.1.1
hub + node + robot runner
我尝试为客户端节点指定platform = LINUX,为本地节点指定platform = UNIX,而在开放浏览器中不工作。现在尝试使用robotframework_selenium2library,因为我认为这是一个下降!
https://github.com/detro/ghostdriver/blob/master/README.md可能提供一种分离实例的方法,但它仍然是在特定节点上运行的一个实例,如果我在客户端浏览器上禁用firefox并将其用于管理员访问它将给我我需要的东西 - (黑客!黑客!毛球)。
答案 0 :(得分:1)
解决这个问题的关键是要知道在调用open_browser时要引用的selenium实例,并且可以通过显式引用Selenium远程RC client_web.open_browser或使用关键字集库搜索顺序来控制。
*** Settings ***
Library SeleniumLibrary 120 ${CLIENT_IP} ${SELENIUM_SERVER_PORT} WITH NAME client_web
*** Variables ***
${MANAGER_BROWSER} Firefox
${BROWSER} Firefox
*** Test Cases ***
Verify Two Browsers Using Search Order
[Setup] Test Case Setup
[Tags] noncritical
Set Library Search Order SeleniumLibrary
${wb_index} = Open Browser ${DUT} ${MANAGER_BROWSER}
Set Library Search Order client_web
${wb_index} = Open Browser ${facebook} ${BROWSER}
Maximize Browser Window
Select Window main
Wait Until Page Contains ${page text} 10s
Log browser-index:${wb_index}
Comment Set suite variable Manager_Browser with call to open specific browser
[Teardown] Local Test Case Teardown