From c77d710cd380e1960a25b5aff869289cb1e2684b Mon Sep 17 00:00:00 2001 From: kshinde2512 <67048554+kshinde2512@users.noreply.github.com> Date: Sat, 23 Apr 2022 21:59:59 +0530 Subject: [PATCH] Services page fix (#4401) --- .../selenium/objectRepository/Common.java | 3 +- .../objectRepository/DatabaseServicePage.java | 1 + .../MessagingServicePage.java | 2 + .../selenium/objectRepository/RolesPage.java | 2 +- .../DashboardServiceTestPage.java | 29 +++++++++++-- .../DatabaseServicePageTest.java | 25 ++++++++--- .../pages/glossary/GlossaryPageTest.java | 11 ++++- .../MessagingServicePageTest.java | 41 +++++++++++++++++-- .../PipelineServiceTestPage.java | 29 ++++++++++++- .../selenium/pages/roles/RolesPageTest.java | 10 ++--- 10 files changed, 132 insertions(+), 21 deletions(-) diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/Common.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/Common.java index b0a4c99252c..586408da407 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/Common.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/Common.java @@ -32,7 +32,7 @@ public class Common { By serviceUsername = By.cssSelector("[id='root_username']"); By servicePassword = By.cssSelector("[id='root_password']"); By nextButton = By.cssSelector("[data-testid='next-button']"); - By saveServiceButton = By.cssSelector("[data-testid='deploy-button']"); + By saveServiceButton = By.cssSelector("[data-testid='submit-btn']"); By saveEditedService = By.cssSelector("[data-testid='save-button']"); By saveConnectionConfig = By.cssSelector("[data-testid='saveManageTab']"); By searchResults = By.cssSelector("[data-testid='search-results']"); @@ -102,6 +102,7 @@ public class Common { By hostPort = By.cssSelector("[id='root_hostPort']"); By addIngestion = By.cssSelector("[data-testid='add-ingestion-button']"); By deployButton = By.cssSelector("[data-testid='deploy-button']"); + By confirmButton = By.cssSelector("[data-testid='confirm-button']"); public List versionRadioButton() { return webDriver.findElements(versionRadioButton); diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/DatabaseServicePage.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/DatabaseServicePage.java index e1d317964ae..2a3222cc663 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/DatabaseServicePage.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/DatabaseServicePage.java @@ -15,6 +15,7 @@ public class DatabaseServicePage { By editIngestion = By.cssSelector("[data-testid='edit']"); By deleteIngestion = By.cssSelector("[data-testid='delete']"); By selectInterval = By.xpath("//select[@id='ingestionType']"); + By confirmationDeleteText = By.cssSelector("[data-testid='confirmation-text-input']"); public By ingestionInterval(String interval) { return By.xpath("//select[@id='ingestionType']/option[@value='" + interval + "']"); diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/MessagingServicePage.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/MessagingServicePage.java index 50cffa2ec97..37ad2afaafb 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/MessagingServicePage.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/MessagingServicePage.java @@ -13,4 +13,6 @@ public class MessagingServicePage { By messagingServiceBootstrapServers = By.cssSelector("[id='root_bootstrapServers']"); By messagingServiceSchemaRegistry = By.cssSelector("[id='root_schemaRegistryURL']"); + By confirmationDeleteText = By.cssSelector("[data-testid='confirmation-text-input']"); + By deleteIngestion = By.cssSelector("[data-testid='delete']"); } diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/RolesPage.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/RolesPage.java index f19d798979f..739893a6e8a 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/RolesPage.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/objectRepository/RolesPage.java @@ -16,7 +16,7 @@ public class RolesPage { By listAccess = By.cssSelector("[data-testid='select-access']"); By ruleToggleButton = By.cssSelector("[data-testid='rule-switch']"); By editRuleButton = By.xpath("(//tbody[@data-testid='table-body']/tr/td/div/span)[1]"); - By accessValue = By.xpath("//tbody[@data-testid='table-body']/tr/td[2]/p"); + By accessValue = By.xpath("(//tbody[@data-testid='table-body']/tr/td[2]/p)[1]"); By deleteRuleButton = By.cssSelector("[data-testid='image'][title='Delete']"); By rolesDisplayName = By.name("displayName"); By errorMessage = By.xpath("//strong[@data-testid='error-message']"); diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/dashboardService/DashboardServiceTestPage.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/dashboardService/DashboardServiceTestPage.java index 372e7b1c150..ea3c2ecd650 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/dashboardService/DashboardServiceTestPage.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/dashboardService/DashboardServiceTestPage.java @@ -30,6 +30,7 @@ import org.openmetadata.catalog.selenium.objectRepository.Common; import org.openmetadata.catalog.selenium.objectRepository.DashboardServicePage; import org.openmetadata.catalog.selenium.properties.Property; import org.openqa.selenium.NoSuchElementException; +import org.openqa.selenium.TimeoutException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; @@ -109,7 +110,22 @@ class DashboardServiceTestPage { Events.sendKeys(webDriver, common.serviceUsername(), "openmetadata_user"); Events.sendKeys(webDriver, common.servicePassword(), "openmetadata_password"); Events.sendKeys(webDriver, dashboardServicePage.hostPort(), "localhost:8080"); - Events.click(webDriver, common.saveManage()); + Events.click(webDriver, common.saveServiceButton()); + Thread.sleep(waitTime); + Events.click(webDriver, common.addIngestion()); + Events.click(webDriver, common.nextButton()); + Events.click(webDriver, common.deployButton()); + Events.click(webDriver, common.headerSettings()); + Events.click(webDriver, common.headerSettingsMenu("Services")); + Events.click(webDriver, common.selectServiceTab(3)); + Thread.sleep(waitTime); + try { + if (webDriver.getPageSource().contains(serviceName)) { + LOG.info("Success"); + } + } catch (NoSuchElementException | TimeoutException r) { + Assert.fail("Service not added"); + } } @Test @@ -133,7 +149,7 @@ class DashboardServiceTestPage { Events.sendKeys(webDriver, dashboardServicePage.hostPort(), "test"); Events.sendKeys(webDriver, common.serviceUsername(), "test"); Events.sendKeys(webDriver, common.servicePassword(), "test"); - Events.click(webDriver, common.saveManage()); + Events.click(webDriver, common.saveServiceButton()); Thread.sleep(2000); try { WebElement errorText = webDriver.findElement(common.containsText("Error while updating service")); @@ -149,9 +165,16 @@ class DashboardServiceTestPage { @Order(5) void deleteDashboardService() throws InterruptedException { openDashboardServicePage(); - Thread.sleep(2000); Events.click(webDriver, common.deleteServiceButton(serviceName)); Events.click(webDriver, common.saveEditedService()); + Thread.sleep(waitTime); + try { + if (webDriver.findElement(common.containsText(serviceName)).isDisplayed()) { + Assert.fail("Service not deleted"); + } + } catch (NoSuchElementException | TimeoutException e) { + LOG.info("Success"); + } } @AfterEach diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/databaseService/DatabaseServicePageTest.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/databaseService/DatabaseServicePageTest.java index a0b8044d149..92b88235a29 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/databaseService/DatabaseServicePageTest.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/databaseService/DatabaseServicePageTest.java @@ -115,14 +115,21 @@ class DatabaseServicePageTest { Events.sendKeys(webDriver, common.hostPort(), "localhost"); Events.click(webDriver, common.databaseName()); Events.sendKeys(webDriver, common.databaseName(), "openmetadata_db"); - Events.click(webDriver, common.saveManage()); + Events.click(webDriver, common.saveServiceButton()); Thread.sleep(waitTime); Events.click(webDriver, common.addIngestion()); Events.click(webDriver, common.nextButton()); Events.click(webDriver, common.deployButton()); Events.click(webDriver, common.headerSettings()); Events.click(webDriver, common.headerSettingsMenu("Services")); - Events.click(webDriver, common.containsText(serviceName)); + Thread.sleep(waitTime); + try { + if (webDriver.getPageSource().contains(serviceName)) { + LOG.info("Success"); + } + } catch (NoSuchElementException | TimeoutException r) { + Assert.fail("Service not added"); + } } @Test @@ -155,10 +162,10 @@ class DatabaseServicePageTest { Events.click(webDriver, databaseServicePage.editIngestion()); // edit ingestion Events.click(webDriver, common.nextButton()); Events.click(webDriver, common.deployButton()); - webDriver.navigate().refresh(); Thread.sleep(waitTime); Events.click(webDriver, databaseServicePage.deleteIngestion()); // delete ingestion - Events.click(webDriver, common.deployButton()); + Events.sendKeys(webDriver, databaseServicePage.confirmationDeleteText(), "DELETE"); + Events.click(webDriver, common.confirmButton()); } @Test @@ -170,7 +177,7 @@ class DatabaseServicePageTest { Events.sendKeys(webDriver, common.serviceUsername(), "test"); Events.sendKeys(webDriver, common.servicePassword(), "test"); Events.sendKeys(webDriver, common.databaseName(), "test"); - Events.click(webDriver, common.saveConnectionConfig()); + Events.click(webDriver, common.saveServiceButton()); Thread.sleep(2000); try { WebElement errorText = webDriver.findElement(common.containsText("Error while updating service")); @@ -188,6 +195,14 @@ class DatabaseServicePageTest { openDatabaseServicePage(); Events.click(webDriver, common.deleteServiceButton(serviceName)); Events.click(webDriver, common.saveEditedService()); + Thread.sleep(waitTime); + try { + if (webDriver.findElement(common.containsText(serviceName)).isDisplayed()) { + Assert.fail("Service not deleted"); + } + } catch (NoSuchElementException | TimeoutException e) { + LOG.info("Success"); + } } @AfterEach diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/glossary/GlossaryPageTest.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/glossary/GlossaryPageTest.java index 7d58254fb8a..fb3746a7e86 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/glossary/GlossaryPageTest.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/glossary/GlossaryPageTest.java @@ -174,7 +174,6 @@ class GlossaryPageTest { openGlossaryPage(); Events.click(webDriver, common.containsText(glossaryName)); Events.click(webDriver, common.addTagButton()); - Events.click(webDriver, common.selectUser()); Events.sendKeys(webDriver, common.displayName(), termName); Events.click(webDriver, common.descriptionBoldButton()); Events.sendKeys(webDriver, common.focusedDescriptionBox(), faker.address().toString()); @@ -200,6 +199,8 @@ class GlossaryPageTest { @Order(9) void addTagToTerm() throws InterruptedException { openGlossaryPage(); + Events.click(webDriver, common.containsText(glossaryName)); + Events.click(webDriver, common.containsText(glossaryName)); Events.click(webDriver, common.containsText(termName)); Events.click(webDriver, common.breadCrumbTags()); Events.click(webDriver, common.enterAssociatedTagName()); @@ -217,6 +218,8 @@ class GlossaryPageTest { @Order(10) void addTermReviewer() throws InterruptedException { openGlossaryPage(); + Events.click(webDriver, common.containsText(glossaryName)); + Events.click(webDriver, common.containsText(glossaryName)); Events.click(webDriver, common.containsText(termName)); Events.click(webDriver, glossary.reviewers()); Events.click(webDriver, common.addGlossaryReviewer()); @@ -231,6 +234,8 @@ class GlossaryPageTest { @Order(11) void deleteTermReviewer() throws InterruptedException { openGlossaryPage(); + Events.click(webDriver, common.containsText(glossaryName)); + Events.click(webDriver, common.containsText(glossaryName)); Events.click(webDriver, common.containsText(termName)); Events.click(webDriver, glossary.reviewers()); Thread.sleep(waitTime); @@ -245,6 +250,8 @@ class GlossaryPageTest { @Order(12) void removeAddedReviewersToTerm() throws InterruptedException { openGlossaryPage(); + Events.click(webDriver, common.containsText(glossaryName)); + Events.click(webDriver, common.containsText(glossaryName)); Events.click(webDriver, common.containsText(termName)); Events.click(webDriver, glossary.reviewers()); Events.click(webDriver, common.addGlossaryReviewer()); @@ -261,6 +268,8 @@ class GlossaryPageTest { @Order(13) void removeAddedTagsToTerm() throws InterruptedException { openGlossaryPage(); + Events.click(webDriver, common.containsText(glossaryName)); + Events.click(webDriver, common.containsText(glossaryName)); Events.click(webDriver, common.containsText(termName)); Events.click(webDriver, glossary.editGlossaryTag()); for (int i = 0; i < 2; i++) { diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/messagingService/MessagingServicePageTest.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/messagingService/MessagingServicePageTest.java index 76f282b3844..f45daafa5a4 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/messagingService/MessagingServicePageTest.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/messagingService/MessagingServicePageTest.java @@ -17,6 +17,7 @@ import com.github.javafaker.Faker; import java.time.Duration; import java.util.ArrayList; import java.util.List; +import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.MethodOrderer; @@ -27,13 +28,17 @@ import org.openmetadata.catalog.selenium.events.Events; import org.openmetadata.catalog.selenium.objectRepository.Common; import org.openmetadata.catalog.selenium.objectRepository.MessagingServicePage; import org.openmetadata.catalog.selenium.properties.Property; +import org.openqa.selenium.NoSuchElementException; +import org.openqa.selenium.TimeoutException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.interactions.Actions; import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +@Slf4j @Order(11) @TestMethodOrder(MethodOrderer.OrderAnnotation.class) class MessagingServicePageTest { @@ -43,7 +48,6 @@ class MessagingServicePageTest { static String url = Property.getInstance().getURL(); static Faker faker = new Faker(); static String serviceName = faker.name().firstName(); - static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div"; static Actions actions; static WebDriverWait wait; Integer waitTime = Property.getInstance().getSleepTime(); @@ -105,7 +109,22 @@ class MessagingServicePageTest { Events.sendKeys( webDriver, messagingServicePage.messagingServiceBootstrapServers(), "localhost:8080, localhost:9092"); Events.sendKeys(webDriver, messagingServicePage.messagingServiceSchemaRegistry(), "https://localhost:8081"); - Events.click(webDriver, common.saveManage()); + Events.click(webDriver, common.saveServiceButton()); + Thread.sleep(waitTime); + Events.click(webDriver, common.addIngestion()); + Events.click(webDriver, common.nextButton()); + Events.click(webDriver, common.deployButton()); + Events.click(webDriver, common.headerSettings()); + Events.click(webDriver, common.headerSettingsMenu("Services")); + Events.click(webDriver, common.selectServiceTab(2)); + Thread.sleep(waitTime); + try { + if (webDriver.getPageSource().contains(serviceName)) { + LOG.info("Success"); + } + } catch (NoSuchElementException | TimeoutException r) { + Assert.fail("Service not added"); + } } @Test @@ -117,15 +136,31 @@ class MessagingServicePageTest { Events.click(webDriver, common.connectionConfig()); Events.sendKeys(webDriver, messagingServicePage.messagingServiceBootstrapServers(), "test"); Events.sendKeys(webDriver, messagingServicePage.messagingServiceSchemaRegistry(), "test"); - Events.click(webDriver, common.saveConnectionConfig()); + Events.click(webDriver, common.saveServiceButton()); } @Test @Order(5) void deleteMessagingService() throws InterruptedException { openMessagingServicePage(); + Events.click(webDriver, common.containsText(serviceName)); + Events.click(webDriver, common.ingestion()); + Events.click(webDriver, messagingServicePage.deleteIngestion()); + Events.sendKeys(webDriver, messagingServicePage.confirmationDeleteText(), "DELETE"); + Events.click(webDriver, common.confirmButton()); + Events.click(webDriver, common.headerSettings()); // Setting + Events.click(webDriver, common.headerSettingsServices()); + Events.click(webDriver, common.selectServiceTab(2)); Events.click(webDriver, common.deleteServiceButton(serviceName)); Events.click(webDriver, common.saveEditedService()); + Thread.sleep(waitTime); + try { + if (webDriver.findElement(common.containsText(serviceName)).isDisplayed()) { + Assert.fail("Service not deleted"); + } + } catch (NoSuchElementException | TimeoutException e) { + LOG.info("Success"); + } } @AfterEach diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/pipelineService/PipelineServiceTestPage.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/pipelineService/PipelineServiceTestPage.java index 508728807e7..dc1d95055fa 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/pipelineService/PipelineServiceTestPage.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/pipelineService/PipelineServiceTestPage.java @@ -17,6 +17,7 @@ import com.github.javafaker.Faker; import java.time.Duration; import java.util.ArrayList; import java.util.List; +import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.MethodOrderer; @@ -27,13 +28,17 @@ import org.openmetadata.catalog.selenium.events.Events; import org.openmetadata.catalog.selenium.objectRepository.Common; import org.openmetadata.catalog.selenium.objectRepository.PipelineServicePage; import org.openmetadata.catalog.selenium.properties.Property; +import org.openqa.selenium.NoSuchElementException; +import org.openqa.selenium.TimeoutException; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import org.openqa.selenium.interactions.Actions; import org.openqa.selenium.support.ui.WebDriverWait; +import org.testng.Assert; +@Slf4j @Order(10) @TestMethodOrder(MethodOrderer.OrderAnnotation.class) class PipelineServiceTestPage { @@ -98,7 +103,19 @@ class PipelineServiceTestPage { Events.sendEnter(webDriver, common.focusedDescriptionBox()); Events.click(webDriver, common.nextButton()); Events.sendKeys(webDriver, pipelineServicePage.pipelineServiceUrl(), "localhost:8080"); - Events.click(webDriver, common.saveManage()); + Events.click(webDriver, common.saveServiceButton()); + Thread.sleep(waitTime); + Events.click(webDriver, common.headerSettings()); + Events.click(webDriver, common.headerSettingsMenu("Services")); + Events.click(webDriver, common.selectServiceTab(4)); + Thread.sleep(waitTime); + try { + if (webDriver.getPageSource().contains(serviceName)) { + LOG.info("Success"); + } + } catch (NoSuchElementException | TimeoutException r) { + Assert.fail("Service not added"); + } } @Test @@ -119,7 +136,7 @@ class PipelineServiceTestPage { Events.click(webDriver, common.containsText(serviceName)); Events.click(webDriver, common.connectionConfig()); Events.sendKeys(webDriver, pipelineServicePage.pipelineServiceUrl(), "test"); - Events.click(webDriver, common.saveConnectionConfig()); + Events.click(webDriver, common.saveServiceButton()); } @Test @@ -128,6 +145,14 @@ class PipelineServiceTestPage { openPipelineServicePage(); Events.click(webDriver, common.deleteServiceButton(serviceName)); Events.click(webDriver, common.saveEditedService()); + Thread.sleep(waitTime); + try { + if (webDriver.findElement(common.containsText(serviceName)).isDisplayed()) { + Assert.fail("Service not deleted"); + } + } catch (NoSuchElementException | TimeoutException e) { + LOG.info("Success"); + } } @AfterEach diff --git a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/roles/RolesPageTest.java b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/roles/RolesPageTest.java index 30407467e0b..5fe469e301d 100644 --- a/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/roles/RolesPageTest.java +++ b/openmetadata-ui/src/test/java/org/openmetadata/catalog/selenium/pages/roles/RolesPageTest.java @@ -136,7 +136,7 @@ class RolesPageTest { @Order(5) void editRule() throws InterruptedException { openRolesPage(); - Events.click(webDriver, common.containsText(roleDisplayName)); + Events.click(webDriver, common.containsText("Data Steward")); Events.click(webDriver, rolesPage.editRuleButton()); Events.click(webDriver, rolesPage.listAccess()); Events.click(webDriver, rolesPage.selectAccess("deny")); @@ -162,7 +162,7 @@ class RolesPageTest { Events.click(webDriver, rolesPage.addRoleButton()); actions.moveToElement(webDriver.findElement(rolesPage.policiesDropdown())).perform(); Events.click(webDriver, rolesPage.policiesDropdown()); - Events.click(webDriver, common.containsText("Data Steward Policy")); + Events.click(webDriver, rolesPage.listItem()); Events.sendKeys(webDriver, common.displayName(), ""); Events.sendKeys(webDriver, rolesPage.rolesDisplayName(), roleDisplayName); Events.click(webDriver, common.descriptionBoldButton()); @@ -184,7 +184,7 @@ class RolesPageTest { Events.click(webDriver, rolesPage.addRoleButton()); actions.moveToElement(webDriver.findElement(rolesPage.policiesDropdown())).perform(); Events.click(webDriver, rolesPage.policiesDropdown()); - Events.click(webDriver, common.containsText("Data Steward Policy")); + Events.click(webDriver, rolesPage.listItem()); Events.sendKeys(webDriver, common.displayName(), faker.name().firstName()); Events.sendKeys(webDriver, rolesPage.rolesDisplayName(), ""); Events.click(webDriver, common.descriptionBoldButton()); @@ -207,7 +207,7 @@ class RolesPageTest { Events.click(webDriver, rolesPage.addRoleButton()); actions.moveToElement(webDriver.findElement(rolesPage.policiesDropdown())).perform(); Events.click(webDriver, rolesPage.policiesDropdown()); - Events.click(webDriver, common.containsText("Data Steward Policy")); + Events.click(webDriver, rolesPage.listItem()); Events.sendKeys(webDriver, common.displayName(), firstName); Events.sendKeys(webDriver, rolesPage.rolesDisplayName(), roleDisplayName); Events.click(webDriver, common.descriptionBox()); @@ -218,7 +218,7 @@ class RolesPageTest { Events.click(webDriver, rolesPage.addRoleButton()); actions.moveToElement(webDriver.findElement(rolesPage.policiesDropdown())).perform(); Events.click(webDriver, rolesPage.policiesDropdown()); - Events.click(webDriver, common.containsText("Data Steward Policy")); + Events.click(webDriver, rolesPage.listItem()); Events.sendKeys(webDriver, common.displayName(), firstName); Events.sendKeys(webDriver, rolesPage.rolesDisplayName(), roleDisplayName); Events.click(webDriver, common.descriptionBox());