如何使用JUnit

时间:2015-10-01 12:21:03

标签: java eclipse selenium junit assert

我有一个页面,我知道在某个xpath包含某个文本。在firefox中,我使用以下代码断言文本存在:

assertEquals("specific text", driver.findElement(By.xpath("xpath)).getText());

我在表单中声明第2步并确认已在表单中添加了某个附件。 但是,当我在Chrome中使用相同的代码时,显示的输出不同,但确实包含特定文本。我收到以下错误:

org.junit.ComparisonFailure: expected:<[]specific text> but was:<[C:\fakepath\]specific text>

而不是断言某些东西是真的(正是我正在寻找的东西)我想写下这样的东西:

assert**Contains**("specific text", driver.findElement(By.xpath("xpath)).getText());

上面的代码显然不起作用,但我找不到如何完成这项工作。

使用Eclipse,Selenium WebDriver和Java

3 个答案:

答案 0 :(得分:13)

使用:

String actualString = driver.findElement(By.xpath("xpath")).getText();
assertTrue(actualString.contains("specific text"));

您还可以使用assertEquals

使用以下方法
String s = "PREFIXspecific text";
assertEquals("specific text", s.substring(s.length()-"specific text".length()));

忽略字符串中不需要的前缀。

答案 1 :(得分:1)

可以使用两个方法assertEquals和assertTrue。 这是用法

String actualString = driver.findElement(By.xpath("xpath")).getText();

String expectedString = "ExpectedString";

assertTrue(actualString.contains(expectedString));

答案 2 :(得分:0)

您也可以使用此

String actualString = driver.findElement(By.xpath(“xpath”))。getText(); Assert.assertTrue(actualString.contains(“specific text”));