如何使用 QAF 查找元素

How to use QAF to find elements

new QAFExtendedWebElement()只能找到一个元素,如果我想找元素直接用selenium,eg。 driver.findElementsByXPath,应该用什么方法,请举例说明

您可以使用驱动程序对象来实现它。在 Java class 测试用例中,您可以扩展 WebDriverTestCase 并使用 getDriver() 方法获取驱动程序对象。它将 return 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 以获得更多有关如何提供定位器字符串的帮助。

在页面 class 你可以有 @FindBy 注释:

public class HomePage extends WebDriverBaseTestPage<WebDriverTestPage>{
    @FindBy(locator = "locator")
    private List<QAFWebElement> eles;
}

component class 中的方法相同,您可以使用 @FindBy。在其他任何地方,您可以获得如下驱动程序对象:

QAFExtendedWebDriver driver = new WebDriverTestBase().getDriver();