Find an element by text and get xpath - selenium webdriver junit

0
0

I have a table with 9 rows and 6 columns in my webpage. I want to search for a text “MakeGoodDisabled-Programwise_09_44_38_461(n)” and get the xpath of the cell. I have used the following but it fails because it is not able to find the text in the page. Can you please help? I am using Selenium Webdriver Junit to code this.

`List<WebElement> links = driver.findElements(By.tagName("td"));
Iterator<WebElement> itr = links.iterator();
while(itr.hasNext()){
String test = itr.next().getText();
if(test.equals("MakeGoodDisabled-Programwise_09_44_38_461(n)")){
String xpath = driver.findElement(By.name(test)).getAttribute("xpath");
System.out.println(xpath);
}
}`
  • You must to post comments
0
0

My intention is to find a text in a table and get the corresponding next column value in
the same row. I thought that I will replace the column number found by fetching the xpath with
the column number I want. is there a better way to do it

Of course there’s a way. Here’s one possible solution.

Get all the rows:

While (iterate over row)
While(Iterate over column)
if(column.Text=='YOUR_MATCH'){
int voila=column.Index
}
}
}

Now you can simply move to that particular index for the other rows; or you could use xpath like .../tr/td[voila] to retrieve all cells for that particular column.

I’ve written an approach, please don’t take to be real-working-code!

  • You must to post comments
Showing 1 result
Your Answer
Post as a guest by filling out the fields below or if you already have an account.
Name*
E-mail*
Website