Java 如何在硒中添加element.element?
假设一个页面上有多个元素Java 如何在硒中添加element.element?,java,selenium-webdriver,qtp,hp-uft,Java,Selenium Webdriver,Qtp,Hp Uft,假设一个页面上有多个元素1s和多个元素2s。对每个元素使用单独的函数,我让它返回唯一的webelement 假设我想找到一个元素,它是元素2的子元素。在QTP中,我可以通过以下方式实现: .WebElement(Element1).WebElement(Element2).WebElement() 有没有一种方法可以在硒中轻松做到这一点?我知道我可以做findelement().findelement().findelement(),但我找不到方法来做element1.element2.fin
1
s和多个元素2
s。对每个元素使用单独的函数,我让它返回唯一的webelement
假设我想找到一个元素,它是元素2
的子元素。在QTP
中,我可以通过以下方式实现:
.WebElement(Element1).WebElement(Element2).WebElement()
有没有一种方法可以在硒中轻松做到这一点?我知道我可以做findelement().findelement().findelement()
,但我找不到方法来做element1.element2.findelement()
编辑:这可能会更清楚
public WebElement testLoading(WebDriver driver){
return driver.findElement(By.xpath("//div[@class='loading-test test-loadingTest']"));
}
目前的执行情况:
for(WebElement e : Collection(driver)){
e.findElement(By.xpath(".//div[@class='loading-test test-loadingTest']"))
}
我想要的是:
e.findElement(testLoading(driver))
通过改变我构建元素的方式,我能够得到我想要的结果 例如:
public By fooBar(AndroidDriver driver){
return By.className("foo");
}
public boolean waitForElement(AndroidDriver driver, By element, int timeout){
try{
driver.manage().timeouts().implicitlyWait(timeout, TimeUnit.SECONDS);
driver.findElement(element);
}
catch(NoSuchElementException nseeContinue){
return false;
}
return true;
}
waitForElement(driver, fooBar(driver), 20);
你能写更多的代码吗?想知道你以前是否听说过XPath。