selenium-server实现在不同PC上执行多线程并发测试

下载Selenium server的jar包
http://selenium-release.storage.googleapis.com/index.html
将jar包保存在主机和需要进行并发测试的机器上

在主机上运行下面的命令
端口号可以是任意没有被占用的

 java –jar C:\autotest\selenium-server-standalone-2.43.1.jar –role hub –port 8888

在需要进行并发测试的机器上运行下面的命令,使其作为Selenium server的节点

java –jar C:\autotest\selenium-server-standalone-2.43.1.jar –role node –hub http://:<port>/grid/register -port 8801

若显示下面的信息,则表示连接服务正常
Registering the no to hub: http://:/grid/register
如果想开启更多节点服务器,重复以上步骤

实例化driver的对象


     try{
        // driver = new FirefoxDriver(profile);
        URL url = new URL("http://localhost:8888/wd/hub");
        desired = DesiredCapabilities.firefox();
        desired.setCapability(FirefoxDriver.PROFILE, profile);
        driver = new RemoteWebDriver(url, desired);
     } catch(Exception e){
   }

在TestNG的XML文件中配置多线程
在suite中加入下面的参数

 <suite name=”autotest” parallel=”classes” thread-count=”5”>

Parallel: 并发测试的Java级别,可以是包,类或者方法
Thread-count: 并发线程数

注意:Selenium server在分配测试到各个节点是随机顺序的,当某个节点是空闲状态,会自动分配到该节点上面。这种方式可以大幅度提高脚本运行的效率。

你可能感兴趣的:(Selenium,自动化测试,并发)