Selenium配置Grid执行环境

上一篇 / 下一篇  2014-12-22 15:55:41 / 个人分类:功能自动化与QTP

  Selenium是最近几年比较流行的web自动化测试工具,其浏览器兼容能力,并发处理能力,web对象的识别都很不错。
  这里主要总结下grid的配置:
  1. 配置jenkins自动化任务
     jenkins是当前比较流行的CI工具,这里主要是用它来做build,再通过maven来执行对应的自动化任务。
     jenkins配置这里就不说了,网上一大推资料,https://wiki.jenkins-ci.org/display/JENKINS/Use+Jenkins
     maven执行命令如下(使用testNG运行指定的TestSuite)
     -Dmode="" -DuseGrid="true" -DbrowserType=${Browser} -DbrowserVersion=${BrowserVersion} -Denv=${Environment}  -Dmaven.filepath=${TestSuite} clean install
     
  2. 配置hub
     hub可以理解为一个储存了很多node的容器,它上面存储了很多已注册的nodes(不同浏览器、不同版本),selenium运行的时候会先和hub通信,由hub来分发所有自动化任务,原则上,nodes越多,自动化执行效率越高。
    a. 安装jdk - hub需要java环境启动
    b. 注册hub
       一般写成一个bat来执行, 比如这样:

TITLE SELENIUM_HUB
set SERVER_NAME=XXXX
set SERVER_PORT=4444
set JAR_NAME=selenium-server-standalone-2.43.0.jar

java -jar %JAR_NAME% -port %SERVER_PORT% -role hub -timeout 300 -browserTimeout 300

    hub有时候会crash或无反应,需要重启,这里附上重启的bat

taskkill /F /FI "WindowTitle eq  Administrator:  SELENIUM_HUB" /T
taskkill /F /IM IEDriverServer*
taskkill /F /IM iexplore*
taskkill /F /IM chrome*

再重新注册下hub就可以了。

  3. 注册node
     node其实就是装载了不同浏览器或者相同浏览器但不同版本的机器节点。
    a. 安装jdk - hub需要java环境启动
    b. 注册node
       这里也写成一个bat来执行, 比如这样:

TITLE SELENIUM_NODE

set HUD_NAME=msqtp81
set HUD_PORT=4444
set NODE_PORT=4005
set DRIVER_PATH_IE=XXXX\IEDriverServer.exe
set DRIVER_PATH_CHROME=XXXX\chromedriver.exe
set JAR_NAME=selenium-server-standalone-2.43.0.jar
set MAX_INSTANCES=3
set MAX_SESSION=3
set MAX_INSTANCES_IE=1
set IE_VERSION=11

java -jar %JAR_NAME% -Dwebdriver.chrome.driver=%DRIVER_PATH_CHROME% -Dwebdriver.ie.driver=%DRIVER_PATH_IE% -maxSession %MAX_SESSION% -role node -host XXXX -browser "browserName=internet explorer,version=%IE_VERSION%,maxInstances=%MAX_INSTANCES_IE%,platform=WINDOWS" -browser "browserName=chrome,maxInstances=%MAX_INSTANCES%,chrome_binary=xxxx\chrome.exe,platform=WINDOWS" -browser "browserName=firefox,maxInstances=%MAX_INSTANCES%,platform=WINDOWS" -browser "browserName=safari,maxInstances=%MAX_INSTANCES%,platform=WINDOWS" -port %NODE_PORT% -hub http://%HUD_NAME%:%HUD_PORT%/grid/register

    node有时候也会crash,需要重启

taskkill /F /FI "WindowTitle eq  Administrator:  SELENIUM_NODE" /T
taskkill /F /IM IEDriverServer*
taskkill /F /IM iexplore*
taskkill /F /IM chrome*
taskkill /F /IM firefox*

执行玩这个,在重新注册下node就可以了。
       
     

TAG:

s200881165的个人空间 引用 删除 s200881165   /   2014-12-23 12:51:29
1
 

评分:0

我来说两句

Open Toolbar