如何使用WebDriver和页面对象验证页面标题?

时间:2013-03-03 16:20:37

标签: java selenium-webdriver testng pageobjects

我正在尝试使用页面对象编写一个方法来验证页面标题,但我无法做到。你可以帮我解决一下在google页面搜索内容后如何编写验证页面标题的方法。

这是我的2个课程。

1级

public class GoogleSearchPage {

protected  WebDriver driver;


@FindBy(name="q")
private WebElement SearchBox;

@FindBy(name="btnG")
private WebElement SearchButton;    


public void SearchFor(String SearchTerm)
{
    SearchBox.sendKeys(SearchTerm);
    SearchButton.click();
}   

}

的Class2

 public class TestSearchResults {
WebDriver driver;
GoogleSearchPage page;

@BeforeClass
public void Launch() throws Exception
{
    driver = new FirefoxDriver();
    driver.get("http://google.com");
}

@AfterClass
public void Close()
{
    driver.quit();
}

@Test
public void ResultPage() {
    System.out.println(page);
    page=PageFactory.initElements(driver, GoogleSearchPage.class);
    page.SearchFor("selenium");

}

}

您可以在显示搜索结果

后帮助您验证如何验证标题

注意:我正在使用TestNG。

先谢谢, Shiva Oleti。

3 个答案:

答案 0 :(得分:4)

试试这个:

assertEquals("Your Page Title" , driver.getTitle());

driver.getTitle() - 返回当前页面的Title

答案 1 :(得分:1)

你可以得到&使用python webdriver验证页面标题。见下面的代码

driver.title('title name')
assert 'title name' in driver.title('title name')

它将验证标题名称。如果它是标题名称测试用例传递断言错误。

答案 2 :(得分:1)

在每个页面对象中创建一个构造函数。构造函数:

  • 设置实例驱动程序值
  • 等待页面加载完成(例如加载微调器不可见,jQuery.active == 0,document.readyState =='complete')
  • 验证页面标题(请参阅其他答案)
  • 问题PageFactory.initElement(driver,this);

因此,您不需要单独的方法来验证标题。在每个步骤中,您将有一个新的YourPageObjectPage(),它会自动检查标题。想想干。