????????????д?????Selenium Grid?????????????????????test case???????
?????????????????????????????????????
?????????????????????????hub ?? ???????ν???hub????windows ??????ie?? ip???192.168.40.24
????????????????????ν??hub??????ν????????firefox?????????????chrome (???windows)??ip???192.168.40.67
????????????hub
????????????hub????
????java -jar selenium-server-standalone-2.24.1.jar -role hub
?????????????????????ν??hub????
????java -jar selenium-server-standalone-2.24.1.jar -role node  -hub http://localhost:4444/grid/register -browser browserName="internet explorer"
?????????????????????????hub?????????
???????firefox??
????java -jar selenium-server-standalone-2.24.1.jar   -Dwebdriver.firefox.bin="D:/Program Files/Mozilla Firefox/firefox.exe" -role webdriver  -hub http://192.168.40.24:4444/grid/register -browser browserName=firefox
????????-Dwebdriver.firefox.bin="D:/Program Files/Mozilla Firefox/firefox.exe"?????????firefox???????????????????????
???????chrome??
????java -jar selenium-server-standalone-2.24.1.jar   -Dwebdriver.chrome.driver="D:/chromedriver.exe" -role webdriver  -hub http://192.168.40.24:4444/grid/register -port 6666 -browser browserName=chrome
????????-Dwebdriver.chrome.driver="D:/chromedriver.exe"????????????chromedriver.exe???????????????6666???????????firefox???????
????????ú???????http://localhost:4444/grid/console??????????????????????????????????ο??????????
????Selenium Grid??????????????????????л???????????????????test case??????????????С????е?????????????testng??????????????????
????testcase ???? ?? testng.xml
????testcase????
package driver;
import java.net.MalformedURLException;
import java.net.URL;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.remote.RemoteWebDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Parameters;
import org.testng.annotations.Test;
public class GridParallelTests {
private WebDriver dr;
DesiredCapabilities test;
String baseUrl;
@Parameters({"browser"??"nodeUrl"??"webSite"})
@BeforeMethod
public void setUp(String browser??String nodeUrl??String webSite){
baseUrl = webSite;
if(browser.equals("ie")) test = DesiredCapabilities.internetExplorer();
else if(browser.equals("ff")) test = DesiredCapabilities.firefox();
else if(browser.equals("chrome")) test = DesiredCapabilities.chrome();
else System.out.println("browser????????????ie?? ff??chrome");
String url = nodeUrl + "/wd/hub";
URL urlInstance = null;
try {
urlInstance = new URL(url);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
System.out.println("?????url???????????url?????????????????http://192.168.40.67:5555");
}
dr = new RemoteWebDriver(urlInstance??test);
dr.get(webSite);
}
@Test
public void test(){
dr.get(baseUrl);
dr.findElement(By.id("kw")).sendKeys("selenium");
dr.findElement(By.id("su")).click();
try {
Thread.sleep(10000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("title:"+dr.getTitle());
}
@AfterMethod
public void quit(){
dr.close();
}
}