如何在表中搜索值,然后在同一行中获取其他单元格值?

问题描述 投票:0回答:2

我想写一个通用方法,我可以在表上搜索以找到特定的行。然后,我可以在同一行获取其他值。

<table>
   <tr>
      <td>Amazon</td>
      <td>$100.00</td>
   </tr>
   <tr>
      <td>Samsung</td>
      <td>$200.00</td>
   </tr>
</table>

例如,我将亚马逊传递给该方法。该方法将定位包含Amazon的行。并且,它将在同一行获得值= $ 100.00。

我怎么能用Selenium Java呢?谢谢

java selenium selenium-webdriver
2个回答
0
投票

以下方法可能对您有所帮助。

public String find(WebDriver driver, String searchString){
    List<WebElemet> lstElements=driver.findElement(By.xpath("//table/tr/td");
       for(int i=0;i<lstElements.size();i++){
         if(lstElements.get(i).getText().equals(searchString)){
           return lstElments(i+1).getText();
      }
}

0
投票

你可以使用下面的代码从表格传递亚马逊到str的值,然后你将获得相应的价值$ 100.00

   public String getValue(String str){
                        String xpath = "//td[text()='%s']";
                          String ele= String.format(xpath,str);
                            WebElement productname= driver.findElement(By.xpath(ele));
               return productname.findElement(By.xpath("/following-sibling::td")).getText(); 
    }
© www.soinside.com 2019 - 2024. All rights reserved.