代码和selenium driver相同 只是 启动环境方式不同。至少启动一个hub 一个 node 。如需要多个,可以使用端口进行区分。

  1. java -jar selenium-server-standalone-x.xx.x.jar -role node -port 5555
  2. java -jar selenium-server-standalone-x.xx.x.jar -role node -port 5556
  3. java -jar selenium-server-standalone-x.xx.x.jar -role node -port 5557
  4. 代码如下

WebDriver wd = new RemoteDriver("http://localhost:4444/wd/hub", aDesiredcap);

//test01: 只匹配Windows下的ie来执行此用例,版本不限;多个版本匹配成功时优先级暂未知

  1. DesiredCapabilities aDesiredcap = DesiredCapabilities();
  2. aDesiredcap.setBrowserName("internet explorer")
  3. aDesiredcap.setVersion("")
  4. aDesiredcap.setPlatform(Platform.WINDOWS)
  5. WebDriver wd = new RemoteDriver("http://localhost:4444/wd/hub", aDesiredcap);
  6. wd.doSomething()
  7. //test02: 只匹配linix下的firefox的版本为22的浏览器执行用例;
  8. DesiredCapabilities aDesiredcap = DesiredCapabilities("firefox", "22", Platform.LINUX);
  9. WebDriver wd = new RemoteDriver("http://localhost:4444/wd/hub", aDesiredcap);
  10. wd.doSomething()
  11. //test03: 只匹配MAC下的safari浏览器执行,版本不限
  12. DesiredCapabilities aDesiredcap = DesiredCapabilities.safari();
  13. aDesiredcap.setPlatform(Platform.MAC)
  14. WebDriver wd = new RemoteDriver("http://localhost:4444/wd/hub", aDesiredcap);
  15. wd.doSomething()
  16. //test04: 只匹配chrome浏览器,任意平台,任意版本
  17. DesiredCapabilities aDesiredcap = DesiredCapabilities.chrome();
  18. aDesiredcap.setPlatform(Platform.ANY)
  19. WebDriver wd = new RemoteDriver("http://localhost:4444/wd/hub", aDesiredcap);
  20. wd.doSomething()
05-26 07:59