Guest User

Untitled

a guest
Nov 15th, 2018
117
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. public class ExamplePageRefactored {
  2.  
  3. @FindBy(css = "[test-id=my-table-name] [test-id=element]")
  4. private List<WebElement> myTableRows;
  5.  
  6. public void selectGenderForRow(String linkText, String optionValueToSelect){
  7. WebElement selectElement = findElementByLinkText(String linkText, List<WebElement> elementList);
  8. selectByOptionValue(selectElement, optionValueToSelect);
  9. }
  10.  
  11. public class WebElementTable {
  12.  
  13. public static WebElement findElementByLinkText(String linkText, List<WebElement> elementList){
  14. return elementList.stream()
  15. .filter(element -> linkText.equals(element.findElement(By.cssSelector("test-id=link")).getText()))
  16. .findFirst()
  17. .orElseThrow(() -> new NoSuchElementException("Element " + linkText + " isn't displayed in the table."));
  18. }
  19. }
  20.  
  21. public class WebElementSelect {
  22.  
  23. public static void selectByOptionValue(WebElement selectElement, String valueToSelect){
  24. List<WebElement> optionsList = selectElement.findElements(By.tagName("option"));
  25. WebElement optionElement = optionsList.stream()
  26. .filter(currentElement -> currentElement.getAttribute("value").equals(optionValueToSelect))
  27. .findFirst()
  28. .orElseThrow(() -> new NoSuchElementException("Option " + optionValueToSelect + " wasn't found in the list."));
  29. optionElement.click();
  30. }
  31. }
Add Comment
Please, Sign In to add comment