From e99024d7eba5d3f5b4c94b8642801d8f41780b2b Mon Sep 17 00:00:00 2001 From: Seraphym-Tuhai Date: Thu, 9 Mar 2023 18:37:13 +0200 Subject: [PATCH] fix locators, fix flaky tests with ElementClickInterceptedException --- .../server/msa/ui/base/AbstractDriverBaseTest.java | 13 ++++++------- .../server/msa/ui/pages/CustomerPageHelper.java | 2 -- .../server/msa/ui/pages/RuleChainsPageElements.java | 2 +- .../tests/customerSmoke/CustomerEditMenuTest.java | 2 +- .../customerSmoke/ManageCustomersDevicesTest.java | 2 +- .../customerSmoke/ManageCustomersEdgesTest.java | 2 +- .../customerSmoke/ManageCustomersUsersTest.java | 2 +- .../ruleChainsSmoke/MakeRuleChainRootTest.java | 2 +- 8 files changed, 12 insertions(+), 15 deletions(-) diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/base/AbstractDriverBaseTest.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/base/AbstractDriverBaseTest.java index 29574a1942..c6db3c7bad 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/base/AbstractDriverBaseTest.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/base/AbstractDriverBaseTest.java @@ -18,7 +18,6 @@ package org.thingsboard.server.msa.ui.base; import io.github.bonigarcia.wdm.WebDriverManager; import io.qameta.allure.Allure; import lombok.extern.slf4j.Slf4j; -import org.openqa.selenium.By; import org.openqa.selenium.Dimension; import org.openqa.selenium.JavascriptExecutor; import org.openqa.selenium.OutputType; @@ -48,7 +47,6 @@ import java.io.ByteArrayInputStream; import java.net.MalformedURLException; import java.net.URL; import java.time.Duration; -import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; import static org.thingsboard.server.msa.TestProperties.getBaseUiUrl; @@ -87,7 +85,7 @@ abstract public class AbstractDriverBaseTest extends AbstractContainerTest { @BeforeMethod public void open() { - openHomePage(); + openLocalhost(); } @AfterMethod @@ -101,12 +99,13 @@ abstract public class AbstractDriverBaseTest extends AbstractContainerTest { driver.quit(); } - public void openLocalhost() { - driver.get(getBaseUiUrl()); + public String getJwtTokenFromLocalStorage() { + js = (JavascriptExecutor) driver; + return (String) js.executeScript("return window.localStorage.getItem('jwt_token');"); } - public void openHomePage() { - driver.get(getBaseUiUrl() + "/home"); + public void openLocalhost() { + driver.get(getBaseUiUrl()); } public String getUrl() { diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/CustomerPageHelper.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/CustomerPageHelper.java index 26303d3e3a..e428ff8030 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/CustomerPageHelper.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/CustomerPageHelper.java @@ -114,9 +114,7 @@ public class CustomerPageHelper extends CustomerPageElements { public void chooseDashboard() { editMenuDashboardField().click(); - sleep(0.5); editMenuDashboard().click(); - sleep(0.5); } public void createCustomersUser() { diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/RuleChainsPageElements.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/RuleChainsPageElements.java index 1f0073bfbe..c1b72efbeb 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/RuleChainsPageElements.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/pages/RuleChainsPageElements.java @@ -35,7 +35,7 @@ public class RuleChainsPageElements extends OtherPageElementsHelper { private static final String DELETE_RULE_CHAIN_FROM_VIEW_BTN = "//span[contains(text(),' Delete')]"; private static final String IMPORT_RULE_CHAIN_BTN = "//span[contains(text(),'Import rule chain')]"; private static final String OPEN_RULE_CHAIN_FROM_VIEW = "//span[contains(text(),'Open rule chain')]"; - private static final String MAKE_ROOT_FROM_VIEW = "(//span[contains(text(),' Make rule chain root ')]/..)[1]"; + private static final String MAKE_ROOT_FROM_VIEW = "//span[contains(text(),' Make rule chain root ')]/parent::button"; private static final String ROOT_ACTIVE_CHECKBOXES = "//mat-icon[text() = 'check_box']"; private static final String ALL_NAMES = "//mat-icon[contains(text(),'check')]/../../../mat-cell[contains(@class,'name')]/span"; diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/CustomerEditMenuTest.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/CustomerEditMenuTest.java index 68e22f2d7f..998aa0af06 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/CustomerEditMenuTest.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/CustomerEditMenuTest.java @@ -63,7 +63,7 @@ public class CustomerEditMenuTest extends AbstractDriverBaseTest { @BeforeMethod public void reLogin() { - if (getUrl().contains("/login")) { + if (getJwtTokenFromLocalStorage() == null) { loginPage.authorizationTenant(); } } diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersDevicesTest.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersDevicesTest.java index fde5b87e52..f6a6e4c433 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersDevicesTest.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersDevicesTest.java @@ -55,7 +55,7 @@ public class ManageCustomersDevicesTest extends AbstractDriverBaseTest { sideBarMenuView.customerBtn().click(); customerPage.setCustomerName(); customerPage.entity(customerPage.getCustomerName()).click(); - customerPage.manageCustomersDeviceBtnView().click(); + jsClick(customerPage.manageCustomersDeviceBtnView()); Assert.assertTrue(urlContains(manage.toLowerCase())); Assert.assertNotNull(customerPage.customerDevicesIconHeader()); diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersEdgesTest.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersEdgesTest.java index 184f506584..a32ab02b7a 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersEdgesTest.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersEdgesTest.java @@ -56,7 +56,7 @@ public class ManageCustomersEdgesTest extends AbstractDriverBaseTest { sideBarMenuView.customerBtn().click(); customerPage.setCustomerName(); customerPage.entity(customerPage.getCustomerName()).click(); - customerPage.manageCustomersEdgeBtnView().click(); + jsClick(customerPage.manageCustomersEdgeBtnView()); Assert.assertTrue(urlContains("edgeInstances")); Assert.assertNotNull(customerPage.customerEdgeIconHeader()); diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersUsersTest.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersUsersTest.java index 0ac6258ab0..632f76422e 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersUsersTest.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/customerSmoke/ManageCustomersUsersTest.java @@ -56,7 +56,7 @@ public class ManageCustomersUsersTest extends AbstractDriverBaseTest { sideBarMenuView.customerBtn().click(); customerPage.setCustomerName(); customerPage.entity(customerPage.getCustomerName()).click(); - customerPage.manageCustomersUserBtnView().click(); + jsClick(customerPage.manageCustomersUserBtnView()); Assert.assertTrue(urlContains("user")); Assert.assertNotNull(customerPage.customerUserIconHeader()); diff --git a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/ruleChainsSmoke/MakeRuleChainRootTest.java b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/ruleChainsSmoke/MakeRuleChainRootTest.java index 7ad3fad982..6b6bbc43bd 100644 --- a/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/ruleChainsSmoke/MakeRuleChainRootTest.java +++ b/msa/black-box-tests/src/test/java/org/thingsboard/server/msa/ui/tests/ruleChainsSmoke/MakeRuleChainRootTest.java @@ -75,7 +75,7 @@ public class MakeRuleChainRootTest extends AbstractDriverBaseTest { ruleChainsPage.setRuleChainNameWithoutRoot(0); String ruleChain = ruleChainsPage.getRuleChainName(); ruleChainsPage.detailsBtn(ruleChain).click(); - ruleChainsPage.makeRootFromViewBtn().click(); + jsClick(ruleChainsPage.makeRootFromViewBtn()); ruleChainsPage.warningPopUpYesBtn().click(); ruleChainsPage.closeEntityViewBtn().click();