一个简单的例子
为了使用PageFactory,首先需要在PageObject(页面对象)中声明一些元素(WebElements 或 RenderedWebElements),例如:
Java代码 - package org.openqa.selenium.example;
-
- import org.openqa.selenium.WebElement;
-
- public class GoogleSearchPage
- {
- private WebElement q;
-
- public void searchFor(String text)
- {
- q.sendKeys(text);
- q.submit();
- }
- }
为了让这段代码工作,而不是因为“Q”是不能实例化抛出一个NullPointerException,所以我们需要初始化PageObject:
Java代码 - package org.openqa.selenium.example;
-
- import org.openqa.selenium.WebDriver;
- import org.openqa.selenium.WebElement;
- import org.openqa.selenium.htmlunit.HtmlUnitDriver;
- import org.openqa.selenium.support.PageFactory;
-
- public class UsingGoogleSearchPage
- {
- public static void main(String[] args)
- {
- WebDriver driver = new HtmlUnitDriver();
- driver.get("http://www.google.com/");
- GoogleSearchPage page = PageFactory.initElements(driver, GoogleSearchPage.class);
- page.searchFor("Cheese");
- }
- }
|