我有一个包含中断文本的元素。使用Java,我如何验证元素的文本是否符合我的期望?
我使用的是以下代码,但总是失败。打印的报告显示实际和预期的文本值是相同的,所以我不知道它为什么会失败。
<span id="ctl00_cphMainContent_lblWelcomeText">
Dear Tester,
<br>
<br>
Line 1
<br>
<br>
Line 2
<br>
<br>
Line 3
<br>
<br>
Line 4
和我的java:
public static final String PAGETEXT = "css=ctl00_cphMainContent_lblWelcomeText";
protected void verifyText(PAGETEXT, "Dear Tester,\r\n\r\nLine 1\r\n\r\nLine 2\r\n\r\nLine 3\r\n\r\nLine 4"){
//verify that the expected text is present
String actualtext = driver.getSingleElement(PAGETEXT).getText();
Assert.assertEquals(actualtext, expectedtext);
答案 0 :(得分:1)
我诚实地将其分解为单独的断言。
verifyTextContains(PAGETEXT, "Dear Tester,");
verifyTextContains(PAGETEXT, "Line 1");
verifyTextContains(PAGETEXT, "Line 2");
verifyTextContains(PAGETEXT, "Line 3");
verifyTextContains(PAGETEXT, "Line 4");
这当然是假设您的验收标准不包括“确保在这些行之间出现断点”
答案 1 :(得分:1)
你可以使用这样的东西。
String expectedtext="Dear Tester, \n\nLine 1\n\nLine 2\n\nLine 3\n\nLine 4";
public void verifyText(){
String actualtext = driver.getSingleElement(PAGETEXT).getText();
Assert.assertEquals(actualtext, expectedtext);
}
基本上保持你的空格在实际文本中。用\ n
替换答案 2 :(得分:0)