为了账号安全,请及时绑定邮箱和手机立即绑定

java Selenium 如何验证文本的值

java Selenium 如何验证文本的值

米琪卡哇伊 2021-09-03 10:31:04
如何检查表中文本的值。我正在使用 java 和 selenium 类我想验证 td 中存在的值是否为“timetoresponse”driver.findElement(By.xpath("//*[@id=\"IncidentSearch\"]/tbody/tr/td[33]"));在 html 代码下方<a tabindex="0" role="button" data-toggle="popover" data-trigger="focus" data-placement="auto" data-content="" data-original-title="" title=""></a><td style="">timeToResponse</td>
查看完整描述

3 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

  1. 在找到的元素上使用 getText() 方法来查找文本

  2. 使用 java equals 方法来验证它是否是预期的文本

  3. 您还可以使用 testNG 断言来验证值。

WebElement element = 

    driver.findElement(By.xpath("//*[@id='IncidentSearch']/tbody/tr/td[33]"));

    if (element.getText().equals("timeToResponse")))

     System.out.println("Match found");

    else 

     System.out.println("Match Not found");

   Assert.assertEquals(element.getText(), "timeToResponse");


查看完整回答
反对 回复 2021-09-03
?
温温酱

TA贡献1752条经验 获得超4个赞

您使用了绝对 xpath,不推荐在自动化脚本中使用。由于它包含 HTML 索引,并且如果 DOM 随结构发生变化,则此 xpath 将无法再工作。您应该使用相对 xpath。


节点的相对 xpath : //a[@title='Title value of this attribute']//td


同样,您可以使用<a>tag 的任何属性并定位<td>


您可以通过Java equal 方法检查它,


String retrieveText = driver.findElement(By.xpath("//a[@title='Title value of this attribute']//td")).getText();


if(retrieveText.equals("timeToResponse")) {

//User defined message on console

System.out.println("Value match as Expected");

}


查看完整回答
反对 回复 2021-09-03
?
拉风的咖菲猫

TA贡献1995条经验 获得超2个赞

如果这个测试是通过 JUnit 执行的,那么你可以使用:

void org.junit.Assert.assertEquals(String message, Object expected, Object actual)

IE

assertEquals("timeToResponse Check ....","timeToResponse",driver.findElement(By.xpath("//a[@title='Title value of this attribute']//td")).getText());



查看完整回答
反对 回复 2021-09-03
  • 3 回答
  • 0 关注
  • 244 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信