0

我有一个包含一些数据的表格,例如:

| _姓名_ |___电子邮件_ __ _ _ |

|网站|website@test.com|

单击名称网站后,将显示网站的设置页面。在顶部,有一个带有“网站”名称的标题。

我需要 JUnit 的解决方案来验证单击表中的“网站”名称后用户是否被重定向到“网站”设置页面。

我尝试了以下方法但没有帮助:

String firstNameInTheTable = driver.findElement(By.xpath(TestPage.FIRST_NAME_IN_THE_TABLE)).getText();
driver.findElement(By.xpath(TestPage.FIRST_NAME_IN_THE_TABLE)).click();
assertEquals(firstNameInTheTable, WebsitePage.WEBSITE_TITLE_TEXT);

实际上,最好验证第一列中的文本(在我们的例子中是“名称”)与设置页面上的文本相同。因此,我们可能没有网站文本而是另一个名称。测试仍然应该通过。

4

2 回答 2

1

1.选择并获取网站名称。

WebElement element = driver.findElement(By.xpath("//xpath"))
String name = element.getText();
element.click();

2.等待加载,选择title和assertEquals。

sleep(3);
String title = driver.findElement(By.xpath("//xpath")).getText();
Assert.assertTrue(name.equals(title));

/!\ 如果第二步是打开一个新窗口,请看这里的教程(放在sleep(3);和之间String title ...)。

其他 :

睡眠法

protected void sleep(int i) {
    driver.manage().timeouts().implicitlyWait(i, TimeUnit.SECONDS);
}
于 2013-04-10T07:59:24.157 回答
0

这是示例,您可以参考它并相应地创建您的 TC

    WebDriver driver = new FirefoxDriver();
    driver.get("https://www.google.co.in/");

    String linkTitle = driver.findElement(By.xpath("//a[@href='/intl/en/about.html']")).getText();
    driver.findElement(By.xpath("//a[@href='/intl/en/about.html']")).click();
    System.out.println(driver.findElement(By.xpath("//div[@id='corp-crumb']/ol/li")).getText());
    Assert.assertTrue(linkTitle.equals(driver.findElement(By.xpath("//div[@id='corp-crumb']/ol/li")).getText()));
于 2013-04-10T13:29:25.797 回答