今天主要研究了下selenium-android+junit写了个小例子
import java.util.concurrent.TimeUnit;
import org.junit.*;
import static org.junit.Assert.*;
import org.openqa.selenium.*;
import org.openqa.selenium.android.AndroidDriver;
public class WebDriverTest {
private AndroidDriver driver;
private String baseUrl;
private boolean acceptNextAlert = true;
private StringBuffer verificationErrors = new StringBuffer();
@Before
public void setUp() throws Exception {
driver = new AndroidDriver();
baseUrl = "http://www.baidu.com/";
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
}
@Test
public void testWebDriver() throws Exception {
driver.get(baseUrl + "/");
driver.findElement(By.id("kw")).clear();
driver.findElement(By.id("kw")).sendKeys("selenium");
driver.findElement(By.id("su")).click();
driver.findElement(By.linkText("selenium_百度百科")).click();
}
@After
public void tearDown() throws Exception {
driver.quit();
String verificationErrorString = verificationErrors.toString();
if (!"".equals(verificationErrorString)) {
fail(verificationErrorString);
}
}
private boolean isElementPresent(By by) {
try {
driver.findElement(by);
return true;
} catch (NoSuchElementException e) {
return false;
}
}
private String closeAlertAndGetItsText() {
try {
Alert alert = driver.switchTo().alert();
if (acceptNextAlert) {
alert.accept();
} else {
alert.dismiss();
}
return alert.getText();
} finally {
acceptNextAlert = true;
}
}
}
我是在android模拟器上面运行的
今天才研究android模拟器做的过程中遇到了些问题,不过后面还是运行成功了,要注意的问题如下:
1.
D:\Android\android-sdk\platform-tools>adb kill-server
2.
D:\Android\android-sdk\platform-tools>adb start-server
3.在模拟器上装上webdriver
D:\Android\android-sdk\platform-tools>adb install C:\Users\hanqiong\Downloads\an
droid-server-2.21.0.apk
93 KB/s (1881490 bytes in 19.591s)
pkg: /data/local/tmp/android-server-2.21.0.apk
Success
4.adb forward tcp:8080 tcp:8080