【发布时间】:2019-01-23 08:56:13
【问题描述】:
new QAFExtendedWebElement() 只能找到一个元素,如果我想找到像直接使用 selenium 这样的元素,例如。 driver.findElementsByXPath,我应该使用哪种方法,请举个例子。
【问题讨论】:
标签: java selenium selenium-webdriver testng qaf
new QAFExtendedWebElement() 只能找到一个元素,如果我想找到像直接使用 selenium 这样的元素,例如。 driver.findElementsByXPath,我应该使用哪种方法,请举个例子。
【问题讨论】:
标签: java selenium selenium-webdriver testng qaf
您可以通过使用驱动程序对象来实现它。在用于测试用例的 Java 类中,您可以扩展 WebDriverTestCase 并使用 getDriver() 方法获取驱动程序对象。它将返回QAFExtendedWebDriver
如果你这里是例子:
public class SampleTestSuite extends WebDriverTestCase {
@Test
public void test1() {
getDriver().get("/");
List<QAFWebElement> eles = getDriver().findElements(locator);
//List<QAFWebElement> eles = getDriver().findElements(By.name("q"));
}
}
请参阅locating elements 以获取更多关于如何提供定位符字符串的帮助。
在页面类中你可以有@FindBy注解:
public class HomePage extends WebDriverBaseTestPage<WebDriverTestPage>{
@FindBy(locator = "locator")
private List<QAFWebElement> eles;
}
在component 类中,您可以使用@FindBy。在其他任何地方,您都可以获得如下驱动程序对象:
QAFExtendedWebDriver driver = new WebDriverTestBase().getDriver();
【讨论】: