查找具有2个字段的相似ID的元素-文本可以是随机的,选择应基于存在或不存在的文本

时间:2019-05-17 19:02:00

标签: selenium selenium-webdriver

请参阅图片以更好地理解 enter image description here

  1. 我的搜索是按ID(RIN)
  2. ID可以是法定名称(公司客户)或姓氏(个人客户)

以下代码有效:

driver.findElement(By.xpath("//td[contains(@id,'l_Name')]")).click();-此人将点击“法定姓名(工作中)

driver.findElement(By.xpath("//td[contains(@id,'Last_Name')]")).click();-如果为姓氏提供了搜索ID(RIN),则此选项适用于姓氏

driver.findElement(By.xpath("//td[contains(@id,'Name')]")).click();-此名称也适用于法定名称,因为显示的第一个元素是法定名称,但不适用于姓氏

如果我这样做

String S = driver.findElement(By.xpath("//td[contains(@id,'l_Name')]")).getText(); System.out.println(S);

KAB GIHADO CARTAGE INC.-显示字符串

但是我想要这样的东西:

driver.findElement(By.xpath("//td[contains(@id,'Name')]")) --- (@id,'Name'),其中驱动程序根据文本是否存在来确定合法名称或姓氏-文本将根据ID(RIN)随机显示

1 个答案:

答案 0 :(得分:0)

这是从字段中获取文本的逻辑,该字段的ID中包含Name,并且包含一些文本(非空)。

String S = driver.findElement(By.xpath("//td[contains(@id,'Name')][not(.='')]")).getText();
System.out.println(S);