本文记录如何在本地环境快速搭建Selenium GRID,并行执行RF用例。
搭建Selenium Grid
这里不对Selenium Grid多做介绍,可以参阅官方文档。
传统的搭建方法,在官方文档中也可以找到。本文使用官方推荐一个简单的开源工具,快速启动Selenium Hub和Node,VisGrid。注册可以免费下载。
下载后双击jar文件可以执行,或者用命令行 java -jar visgrid-1.24.jar 启动。
操作界面如图,点击 Start Hub,用默认配置快速启动Hub。
点击 Create Node,修改相关配置,快速启动Node。
之后我们可以浏览器访问http://localhost:4444/grid/console,查看Grid部署情况。
样例case
resource.robot
*** Settings ***
Library Selenium2Library
*** Variables ***
${VALID USER} admin
${VALID PASSWORD} admin
${LOGIN URL} http://${SERVER}
${HUB} http://localhost:4444/wd/hub
*** Keywords ***
Open Browser Via Grid
[Arguments] ${url} ${browser}=Chrome
${chrome_options} = Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
Call Method ${chrome_options} add_argument headless
Call Method ${chrome_options} add_argument disable-gpu
${options}= Call Method ${chrome_options} to_capabilities
Open Browser ${url} browser=${browser} remote_url=${HUB} desired_capabilities=${options}
User superadmin Logged on C15000
Open Browser Via Grid ${LOGIN URL} ${BROWSER}
Maximize Browser Window
Input Username superadmin
Input Password superadmin
Submit Credentials
test_case.robot
*** Settings ***
Suite Setup Run Keywords User superadmin Logged on C15000 Nevigate to Ecpool
Suite Teardown Close All Browsers
Resource resource.robot
*** Test Cases ***
Test Case 1
Click Create Button
Input Pool Name autotestrep
Click OK Button And Wait for Pool Creation
Test Case 2
Click Create Button
Input Pool Name autotestera
Click OK Button And Wait for Pool Creation
安装并使用pabot并行执行用例
pip install robotframework-pabot
cd <project_dir>
pabot --processes 5 test_case
最终report.html和log.html会自动merge。
参考:
http://www.51testing.com/index.php?action-viewnews-itemid-3718145-php-1