如何使用QAF查找元素

问题描述 投票:2回答:1

new QAFExtendedWebElement()只能找到一个元素,如果我想找到直接使用selenium等元素,例如。 driver.findElementsByXPath,我应该使用哪种方法,请举个例子。

java selenium selenium-webdriver testng qaf
1个回答
0
投票

您可以使用驱动程序对象来实现它。在测试用例的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();
© www.soinside.com 2019 - 2024. All rights reserved.