如上图所示,需要定位这个元素,因为没有id,所以就采用了byName的方式来定位
WebDriverWait wait = new WebDriverWait(driver,10,2000);
WebElement element = wait.until(new ExpectedCondition<WebElement>(){
@Override
public WebElement apply(WebDriver driver) {
return driver.findElement(By.name("VIDEO EDITOR"));
}
});
element.click();
but,在另一个同事的mac 上通过这个方式是找不到元素的,我的开发环境是windows 的appium,一套强壮的代码需要兼容windows、mac、linux 系统,大家也可以协同办公,so ~ 做了如下的调整:
通过className 来定位元素
List<WebElement> lis = driver.findElementsByClassName("android.widget.TextView");//获取classname的所有元素
WebElement element = lis.get(2);//获取列表中第2个元素
element.click();