Fix #2042: Added missing java check-styles for openmetadata-ui (#2043)

This commit is contained in:
Alberto Miorin 2022-01-05 17:35:53 +01:00 committed by GitHub
parent 83c452431e
commit 35f1967962
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 188 additions and 305 deletions

View File

@ -1,5 +1,5 @@
/*
* Copyright 2021 Collate
* Copyright 2021 Collate
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
@ -22,8 +22,7 @@ import org.openqa.selenium.support.ui.WebDriverWait;
public final class Events {
@SuppressWarnings("unused")
private Events() {
}
private Events() {}
public static void click(WebDriver driver, By by) {
(new WebDriverWait(driver, 30)).until(ExpectedConditions.elementToBeClickable(by));

View File

@ -13,6 +13,9 @@
package org.openmetadata.catalog.selenium.pages.common;
import java.time.Duration;
import java.util.ArrayList;
import java.util.logging.Logger;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer;
@ -32,10 +35,6 @@ import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import java.time.Duration;
import java.util.ArrayList;
import java.util.logging.Logger;
@Order(14)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class PaginationAndFilterTest {
@ -72,8 +71,10 @@ public class PaginationAndFilterTest {
}
Events.click(webDriver, By.cssSelector("[data-testid='checkbox'][id='BigQuery']")); // Select Filter
try {
WebElement noDataFound = wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
"//*[contains(text(), 'No matching data assets found')]")));
WebElement noDataFound =
wait.until(
ExpectedConditions.presenceOfElementLocated(
By.xpath("//*[contains(text(), 'No matching data assets found')]")));
if (noDataFound.isDisplayed()) {
throw new Exception("Flakiness exists");
}
@ -90,8 +91,10 @@ public class PaginationAndFilterTest {
Events.click(webDriver, By.cssSelector("[data-testid='tables']")); // Tables
Events.click(webDriver, By.cssSelector("[data-testid='checkbox'][id='BigQuery']")); // Select Filter
try {
WebElement noDataFound = wait.until(ExpectedConditions.presenceOfElementLocated(By.xpath(
"//*[contains(text(), 'No matching data assets found')]")));
WebElement noDataFound =
wait.until(
ExpectedConditions.presenceOfElementLocated(
By.xpath("//*[contains(text(), 'No matching data assets found')]")));
if (noDataFound.isDisplayed()) {
throw new Exception("Data not found with filter count more than 0");
}
@ -109,12 +112,12 @@ public class PaginationAndFilterTest {
Events.click(webDriver, By.cssSelector("[data-testid='checkbox'][id='Tier.Tier3']")); // Select Filter
try {
WebElement dataFound = wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector(
"[data-testid='search-results']")));
WebElement dataFound =
wait.until(ExpectedConditions.presenceOfElementLocated(By.cssSelector("[data-testid='search-results']")));
if (dataFound.isDisplayed()) {
throw new Exception("Data found with filter count 0");
}
} catch(TimeoutException exception) {
} catch (TimeoutException exception) {
LOG.info("Success");
}
}

View File

@ -41,9 +41,7 @@ public class PostIngestionTests {
}
public void ingestSampleDataPostTests() throws IOException {
String[] installIngestion = {
"bash", "-c", "cd ../ && pip install ingestion/"
}; // install openmetadata ingestion
String[] installIngestion = {"bash", "-c", "cd ../ && pip install ingestion/"}; // install openmetadata ingestion
String[] ingestSampleData = {
"bash", "-c", "cd ../ingestion && metadata ingest -c ./pipelines/sample_data.json"
}; // ingest sample data

View File

@ -30,8 +30,7 @@ public class UiExceptionHandling {
static String url = Property.getInstance().getURL();
static Actions actions;
static WebDriverWait wait;
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static Faker faker = new Faker();
static String serviceName = faker.name().firstName();
@ -82,13 +81,9 @@ public class UiExceptionHandling {
public void exceptionCheckForUserList() {
interceptor("users", "testing");
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Users']")); // Setting/Users
Events.click(
webDriver,
By.xpath("//*[text()[contains(.,'" + "Request failed with status code 400" + "')]]"));
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + "Request failed with status code 400" + "')]]"));
Events.click(webDriver, By.cssSelector("[data-testid='dismiss']"));
Assert.assertEquals(400, 400);
}
@ -97,11 +92,8 @@ public class UiExceptionHandling {
public void exceptionCheckForGetServices() throws InterruptedException {
interceptor("databaseService", "testing");
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Thread.sleep(2000);
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + "No services found" + "')]]"));
Assert.assertEquals(500, 500);
@ -111,21 +103,15 @@ public class UiExceptionHandling {
public void exceptionCheckFor() {
interceptor("services/databaseServices", "services/testing");
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
}
@Test
public void exceptionCheckForPostService() {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='add-new-user-button']"));
Events.click(webDriver, By.cssSelector("[data-testid='selectService']"));
Events.click(webDriver, By.cssSelector("[value='MySQL']"));
@ -137,9 +123,7 @@ public class UiExceptionHandling {
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
interceptor("services/databaseServices", "services/testing");
Events.click(webDriver, By.cssSelector("[data-testid='save-button']"));
Events.click(
webDriver,
By.xpath("//*[text()[contains(.,'" + "Request failed with status code 500" + "')]]"));
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + "Request failed with status code 500" + "')]]"));
Events.click(webDriver, By.cssSelector("[data-testid='dismiss']"));
Assert.assertEquals(500, 500);
}
@ -147,19 +131,14 @@ public class UiExceptionHandling {
@Test
public void exceptionCheckForUpdateService() {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='edit-service-" + "bigquery_gcp" + "']"));
Events.click(webDriver, By.xpath(enterDescription));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
interceptor("services/databaseServices", "services/testing");
Events.click(webDriver, By.cssSelector("[data-testid='save-button']"));
Events.click(
webDriver,
By.xpath("//*[text()[contains(.,'" + "Request failed with status code 500" + "')]]"));
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + "Request failed with status code 500" + "')]]"));
Events.click(webDriver, By.cssSelector("[data-testid='dismiss']"));
Assert.assertEquals(500, 500);
}
@ -167,13 +146,9 @@ public class UiExceptionHandling {
@Test
public void exceptionCheckForDeleteService() {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(
webDriver, By.cssSelector("[data-testid='delete-service-" + "bigquery_gcp" + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='delete-service-" + "bigquery_gcp" + "']"));
interceptor("services/databaseServices", "services/testing");
Assert.assertEquals(500, 500);
}

View File

@ -39,8 +39,7 @@ public class DashboardDetailsPageTest {
Integer waitTime = Property.getInstance().getSleepTime();
static Faker faker = new Faker();
String dashboardName = "Misc Charts";
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static Actions actions;
static WebDriverWait wait;
@ -133,17 +132,13 @@ public class DashboardDetailsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
Events.click(webDriver, By.xpath("(//button[@data-testid='table-link'])[last()]"));
Thread.sleep(waitTime);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
Thread.sleep(2000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + "')]] "));
@ -151,9 +146,7 @@ public class DashboardDetailsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
Thread.sleep(2000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
@ -167,9 +160,7 @@ public class DashboardDetailsPageTest {
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), dashboardName);
Events.click(webDriver, By.cssSelector("[data-testid='data-name']"));
Thread.sleep(waitTime);
Events.click(
webDriver,
By.xpath("//table[@data-testid='schema-table']//div[@data-testid='tag-conatiner']//span"));
Events.click(webDriver, By.xpath("//table[@data-testid='schema-table']//div[@data-testid='tag-conatiner']//span"));
Events.click(webDriver, By.cssSelector("[data-testid='associatedTagName']"));
for (int i = 0; i <= 1; i++) {
Events.sendKeys(webDriver, By.cssSelector("[data-testid='associatedTagName']"), "P");
@ -185,9 +176,7 @@ public class DashboardDetailsPageTest {
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), dashboardName);
Events.click(webDriver, By.cssSelector("[data-testid='data-name']"));
Thread.sleep(waitTime);
actions
.moveToElement(webDriver.findElement(By.cssSelector("[data-testid='edit-tags']")))
.perform();
actions.moveToElement(webDriver.findElement(By.cssSelector("[data-testid='edit-tags']"))).perform();
Events.click(webDriver, By.cssSelector("[data-testid='edit-tags']"));
Thread.sleep(waitTime);
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
@ -239,11 +228,8 @@ public class DashboardDetailsPageTest {
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
for (int i = 1; i <= 3; i++) { // check topics in service
Events.click(
webDriver,
By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // dashboards
Events.click(
webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.click(webDriver, By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // dashboards
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
@ -255,7 +241,7 @@ public class DashboardDetailsPageTest {
webDriver.navigate().refresh();
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription +"')]] "));
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
webDriver.navigate().refresh();
Thread.sleep(waitTime);

View File

@ -40,8 +40,7 @@ public class DashboardServiceTestPage {
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 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();
@ -63,11 +62,8 @@ public class DashboardServiceTestPage {
@Order(1)
public void openDashboardServicePage() throws InterruptedException {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[3]"));
Thread.sleep(waitTime);
}
@ -77,8 +73,7 @@ public class DashboardServiceTestPage {
public void addDashboardService() throws InterruptedException {
openDashboardServicePage();
Thread.sleep(2000);
List<WebElement> webElementList =
webDriver.findElements(By.cssSelector("[data-testid='add-new-user-button']"));
List<WebElement> webElementList = webDriver.findElements(By.cssSelector("[data-testid='add-new-user-button']"));
if (webElementList.isEmpty()) {
Events.click(webDriver, By.cssSelector("[data-testid='add-service-button']"));
} else {
@ -86,12 +81,9 @@ public class DashboardServiceTestPage {
}
Events.click(webDriver, By.cssSelector("[value='Looker']"));
Events.sendKeys(webDriver, By.cssSelector("[data-testid='name']"), serviceName);
Events.sendKeys(
webDriver, By.cssSelector("[data-testid='dashboard-url']"), "http://localhost:8080");
Events.sendKeys(
webDriver, By.cssSelector("[data-testid='username']"), faker.name().firstName());
Events.sendKeys(
webDriver, By.cssSelector("[data-testid='password']"), faker.name().firstName());
Events.sendKeys(webDriver, By.cssSelector("[data-testid='dashboard-url']"), "http://localhost:8080");
Events.sendKeys(webDriver, By.cssSelector("[data-testid='username']"), faker.name().firstName());
Events.sendKeys(webDriver, By.cssSelector("[data-testid='password']"), faker.name().firstName());
Events.click(webDriver, By.cssSelector("[data-testid='boldButton']"));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());

View File

@ -1,5 +1,5 @@
/*
* Copyright 2021 Collate
* Copyright 2021 Collate
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
@ -14,7 +14,15 @@
package org.openmetadata.catalog.selenium.pages.databaseService;
import com.github.javafaker.Faker;
import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -23,17 +31,7 @@ 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.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.TestMethodOrder;
import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
@Order(8)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
@ -65,8 +63,7 @@ public class DatabaseServicePageTest {
public void openDatabaseServicePage() throws InterruptedException {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Thread.sleep(waitTime);
Events.click(webDriver, By.cssSelector(
"[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Thread.sleep(waitTime);
}
@ -106,7 +103,7 @@ public class DatabaseServicePageTest {
public void editDatabaseService() throws InterruptedException {
openDatabaseServicePage();
Thread.sleep(2000);
Events.click(webDriver, By.cssSelector("[data-testid='edit-service-"+ serviceName + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='edit-service-" + serviceName + "']"));
Events.click(webDriver, By.xpath(enterDescription));
Events.sendEnter(webDriver, By.xpath(enterDescription));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
@ -140,11 +137,10 @@ public class DatabaseServicePageTest {
public void deleteDatabaseService() throws InterruptedException {
openDatabaseServicePage();
Thread.sleep(2000);
Events.click(webDriver, By.cssSelector("[data-testid='delete-service-"+ serviceName + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='delete-service-" + serviceName + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='save-button']"));
}
@AfterEach
public void closeTabs() {
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());

View File

@ -14,7 +14,14 @@
package org.openmetadata.catalog.selenium.pages.ingestion;
import com.github.javafaker.Faker;
import java.time.Duration;
import java.util.ArrayList;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -23,14 +30,6 @@ 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.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.TestMethodOrder;
import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
@Order(12)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
@ -61,8 +60,7 @@ public class IngestionPageTest {
public void openIngestionPage() throws InterruptedException {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Thread.sleep(waitTime);
Events.click(webDriver, By.cssSelector(
"[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Ingestions']")); // Setting/Services
Thread.sleep(waitTime);
}
@ -91,7 +89,7 @@ public class IngestionPageTest {
@Test
@Order(3)
public void runIngestionService() throws InterruptedException{
public void runIngestionService() throws InterruptedException {
openIngestionPage();
Events.click(webDriver, By.cssSelector("[data-testid='run']"));
webDriver.navigate().refresh();
@ -99,7 +97,7 @@ public class IngestionPageTest {
@Test
@Order(4)
public void editIngestionService() throws InterruptedException{
public void editIngestionService() throws InterruptedException {
openIngestionPage();
Events.click(webDriver, By.cssSelector("[data-testid='edit']"));
Events.sendKeys(webDriver, By.cssSelector("[data-testid='include-filter-pattern']"), ",");

View File

@ -14,7 +14,15 @@
package org.openmetadata.catalog.selenium.pages.messagingService;
import com.github.javafaker.Faker;
import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -24,15 +32,6 @@ 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.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.TestMethodOrder;
import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
@Order(11)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
@ -102,7 +101,7 @@ public class MessagingServicePageTest {
public void editMessagingService() throws InterruptedException {
openMessagingServicePage();
Thread.sleep(2000);
Events.click(webDriver, By.cssSelector("[data-testid='edit-service-"+ serviceName + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='edit-service-" + serviceName + "']"));
Events.click(webDriver, By.xpath(enterDescription));
Events.sendEnter(webDriver, By.xpath(enterDescription));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
@ -136,11 +135,10 @@ public class MessagingServicePageTest {
public void deleteMessagingService() throws InterruptedException {
openMessagingServicePage();
Thread.sleep(2000);
Events.click(webDriver, By.cssSelector("[data-testid='delete-service-"+ serviceName + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='delete-service-" + serviceName + "']"));
Events.click(webDriver, By.cssSelector("[data-testid='save-button']"));
}
@AfterEach
public void closeTabs() {
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());

View File

@ -63,11 +63,8 @@ public class MyDataPageTest {
@Test
@Order(1)
public void checkWhatsNew() {
Events.click(
webDriver,
By.xpath("//ul[@class='slick-dots testid-dots-button']//li[2]")); // What's new page 2
Events.click(
webDriver, By.cssSelector("[data-testid='WhatsNewModalChangeLogs']")); // Change Logs
Events.click(webDriver, By.xpath("//ul[@class='slick-dots testid-dots-button']//li[2]")); // What's new page 2
Events.click(webDriver, By.cssSelector("[data-testid='WhatsNewModalChangeLogs']")); // Change Logs
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
}
@ -111,35 +108,25 @@ public class MyDataPageTest {
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());
Events.click(webDriver, By.cssSelector("[data-testid='appbar-item'][id='explore']")); // Explore
webDriver.navigate().back();
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Teams']")); // Setting/Teams
webDriver.navigate().back();
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Tags']")); // Setting/Tags
webDriver.navigate().back();
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='whatsnew-modal']")); // What's New
checkWhatsNew();
Events.click(
webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Need Help']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Need Help']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Docs']"));
webDriver.switchTo().window(tabs.get(0));
Events.click(
webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Need Help']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Need Help']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-API']"));
webDriver.navigate().back();
Events.click(
webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Need Help']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Need Help']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Slack']"));
webDriver.switchTo().window(tabs.get(0));
}
@ -150,9 +137,7 @@ public class MyDataPageTest {
checkWhatsNew();
Events.click(webDriver, By.cssSelector("[data-testid='tables']")); // Tables
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), table);
Events.click(
webDriver,
By.cssSelector("[data-testid='data-name'][id='bigquery_gcpshopifydim_product_variant']"));
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id='bigquery_gcpshopifydim_product_variant']"));
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[4]")); // Manage
Events.click(webDriver, By.cssSelector("[data-testid='owner-dropdown']")); // Owner
Events.click(webDriver, By.xpath("//div[@data-testid='dropdown-list']//div[2]//button[2]"));
@ -172,14 +157,11 @@ public class MyDataPageTest {
checkWhatsNew();
Events.click(webDriver, By.cssSelector("[data-testid='tables']")); // Tables
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), table);
Events.click(
webDriver,
By.cssSelector("[data-testid='data-name'][id='bigquery_gcpshopifydim_product_variant']"));
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id='bigquery_gcpshopifydim_product_variant']"));
Events.click(webDriver, By.cssSelector("[data-testid='follow-button']"));
Events.click(webDriver, By.cssSelector("[data-testid='image']"));
webDriver.navigate().refresh();
Events.click(
webDriver, By.xpath("//div[@data-testid='Following data-" + table + "']/div/a/button"));
Events.click(webDriver, By.xpath("//div[@data-testid='Following data-" + table + "']/div/a/button"));
webDriver.navigate().back();
Events.click(webDriver, By.cssSelector("[data-testid='following-data']")); // Following
Events.click(webDriver, By.xpath("//button[@data-testid='table-link']"));
@ -191,9 +173,7 @@ public class MyDataPageTest {
checkWhatsNew();
Events.click(webDriver, By.cssSelector("[data-testid='tables']")); // Tables
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), "fact_line_item");
Events.click(
webDriver,
By.cssSelector("[data-testid='data-name'][id='bigquery_gcpshopifyfact_line_item']"));
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id='bigquery_gcpshopifyfact_line_item']"));
Events.click(webDriver, By.cssSelector("[data-testid='image']"));
webDriver.navigate().refresh();
Events.click(webDriver, By.cssSelector("[data-testid='Recently Viewed-fact_line_item']"));

View File

@ -40,8 +40,7 @@ public class PipelineDetailsPageTest {
Integer waitTime = Property.getInstance().getSleepTime();
static Faker faker = new Faker();
String pipelineName = "dim_product etl";
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static Actions actions;
static WebDriverWait wait;
@ -133,26 +132,20 @@ public class PipelineDetailsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
Events.click(webDriver, By.xpath("(//button[@data-testid='table-link'])[last()]"));
Thread.sleep(waitTime);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
Thread.sleep(1000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + "')]] "));
Events.sendKeys(webDriver, By.xpath(enterDescription), updateDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
Thread.sleep(2000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']/button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']/button"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
@ -164,14 +157,11 @@ public class PipelineDetailsPageTest {
public void checkLineage() throws InterruptedException {
openExplorePage();
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), pipelineName);
Events.click(
webDriver,
By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[2]"));
for (int i = 1; i <= 3; i++) {
WebElement lineageEntity =
webDriver.findElement(
By.xpath("(//span[@data-testid='lineage-entity'])" + "[" + i + "]"));
webDriver.findElement(By.xpath("(//span[@data-testid='lineage-entity'])" + "[" + i + "]"));
actions.dragAndDropBy(lineageEntity, 100, 200).build();
}
}
@ -200,9 +190,7 @@ public class PipelineDetailsPageTest {
String editDescription = faker.address().toString();
String updateDescription = faker.address().toString();
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), pipelineName);
Events.click(
webDriver,
By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
Events.click(webDriver, By.cssSelector("[data-testid='data-name'][id ='sample_airflowdim_product_etl']"));
Thread.sleep(waitTime);
Events.click(webDriver, By.cssSelector("[data-testid='breadcrumb-link']"));
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
@ -220,11 +208,8 @@ public class PipelineDetailsPageTest {
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
for (int i = 1; i <= 3; i++) { // check topics in service
Events.click(
webDriver,
By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // pipelines
Events.click(
webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.click(webDriver, By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // pipelines
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
@ -236,7 +221,7 @@ public class PipelineDetailsPageTest {
webDriver.navigate().refresh();
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription +"')]] "));
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
webDriver.navigate().refresh();
Thread.sleep(waitTime);

View File

@ -40,8 +40,7 @@ public class PipelineServiceTestPage {
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 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();
@ -63,11 +62,8 @@ public class PipelineServiceTestPage {
@Order(1)
public void openPipelineServicePage() throws InterruptedException {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(
webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Services']")); // Setting/Services
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[4]"));
Thread.sleep(waitTime);
}
@ -77,8 +73,7 @@ public class PipelineServiceTestPage {
public void addPipelineService() throws InterruptedException {
openPipelineServicePage();
Thread.sleep(2000);
List<WebElement> webElementList =
webDriver.findElements(By.cssSelector("[data-testid='add-new-user-button']"));
List<WebElement> webElementList = webDriver.findElements(By.cssSelector("[data-testid='add-new-user-button']"));
if (webElementList.isEmpty()) {
Events.click(webDriver, By.cssSelector("[data-testid='add-service-button']"));
} else {
@ -86,8 +81,7 @@ public class PipelineServiceTestPage {
}
Events.click(webDriver, By.cssSelector("[value='Prefect']"));
Events.sendKeys(webDriver, By.cssSelector("[data-testid='name']"), serviceName);
Events.sendKeys(
webDriver, By.cssSelector("[data-testid='pipeline-url']"), "http://localhost:8080");
Events.sendKeys(webDriver, By.cssSelector("[data-testid='pipeline-url']"), "http://localhost:8080");
Events.click(webDriver, By.cssSelector("[data-testid='boldButton']"));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
Events.click(webDriver, By.xpath(enterDescription));

View File

@ -39,8 +39,7 @@ public class TableDetailsPageTest {
static WebDriver webDriver;
static String url = Property.getInstance().getURL();
static Faker faker = new Faker();
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
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();
@ -110,36 +109,27 @@ public class TableDetailsPageTest {
String updateDescription = faker.address().toString();
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), tableName);
Events.click(webDriver, By.cssSelector("[data-testid='data-name']"));
wait.until(
ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='searchbar']")));
wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='searchbar']")));
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchbar']"), "address1");
Thread.sleep(2000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']//button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']//button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']//button"));
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
wait.until(
ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='searchbar']")));
wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='searchbar']")));
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchbar']"), "address1");
Thread.sleep(2000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']//button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']//button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']//button"));
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + "')]] "));
Events.sendKeys(webDriver, By.xpath(enterDescription), updateDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
wait.until(
ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='searchbar']")));
wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='searchbar']")));
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchbar']"), "address1");
Thread.sleep(2000);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']//button")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='description']//button"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='description']//button"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
@ -153,9 +143,7 @@ public class TableDetailsPageTest {
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), tableName);
Events.click(webDriver, By.cssSelector("[data-testid='data-name']"));
Thread.sleep(waitTime);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='tag-conatiner']//span")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='tag-conatiner']//span"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='tag-conatiner']//span"));
Events.click(webDriver, By.cssSelector("[data-testid='associatedTagName']"));
for (int i = 0; i <= 1; i++) {
@ -172,9 +160,7 @@ public class TableDetailsPageTest {
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchBox']"), tableName);
Events.click(webDriver, By.cssSelector("[data-testid='data-name']"));
Thread.sleep(waitTime);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='tag-conatiner']//span")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='tag-conatiner']//span"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='tag-conatiner']//span"));
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
@ -203,17 +189,12 @@ public class TableDetailsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='data-name']"));
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[2]")); // Profiler
for (int i = 1; i <= 4; i++) {
Events.click(
webDriver,
By.xpath("(//td[@data-testid='tableBody-cell']//span)" + "[" + i + "]")); // Profiler
Events.click(webDriver, By.xpath("(//td[@data-testid='tableBody-cell']//span)" + "[" + i + "]")); // Profiler
actions
.moveToElement(
webDriver.findElement(
By.xpath("(//tr[@data-testid='tableBody-row']//td" + "[" + i + "]" + ")")))
webDriver.findElement(By.xpath("(//tr[@data-testid='tableBody-row']//td" + "[" + i + "]" + ")")))
.perform();
Events.click(
webDriver,
By.xpath("(//td[@data-testid='tableBody-cell']//span)" + "[" + i + "]")); // Profiler
Events.click(webDriver, By.xpath("(//td[@data-testid='tableBody-cell']//span)" + "[" + i + "]")); // Profiler
Thread.sleep(waitTime);
}
}
@ -245,8 +226,7 @@ public class TableDetailsPageTest {
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[3]"));
for (int i = 1; i <= 3; i++) {
WebElement lineageEntity =
webDriver.findElement(
By.xpath("(//span[@data-testid='lineage-entity'])" + "[" + i + "]"));
webDriver.findElement(By.xpath("(//span[@data-testid='lineage-entity'])" + "[" + i + "]"));
actions.dragAndDropBy(lineageEntity, 100, 200).build();
}
}
@ -289,11 +269,8 @@ public class TableDetailsPageTest {
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
for (int i = 1; i <= 3; i++) { // check topics in service
Events.click(
webDriver,
By.xpath("(//tr[@data-testid='tabale-column']//td[1]/a)" + "[" + i + "]")); // tables
Events.click(
webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.click(webDriver, By.xpath("(//tr[@data-testid='tabale-column']//td[1]/a)" + "[" + i + "]")); // tables
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
@ -305,7 +282,7 @@ public class TableDetailsPageTest {
webDriver.navigate().refresh();
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription +"')]] "));
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
Thread.sleep(waitTime);
webDriver.navigate().back();

View File

@ -41,8 +41,7 @@ public class TagsPageTest {
static Faker faker = new Faker();
static String tagCategoryDisplayName = faker.name().firstName();
static String tagDisplayName = faker.name().firstName();
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
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();
@ -64,9 +63,7 @@ public class TagsPageTest {
@Order(1)
public void openTagsPage() throws InterruptedException {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Tags']")); // Setting/Tags
Thread.sleep(waitTime);
}
@ -121,8 +118,7 @@ public class TagsPageTest {
Events.sendEnter(webDriver, By.xpath(enterDescription));
Events.click(webDriver, By.cssSelector("[data-testid='linkButton']"));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
wait.until(
ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='saveButton']")));
wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='saveButton']")));
Events.click(webDriver, By.cssSelector("[data-testid='saveButton']"));
}
@ -132,9 +128,7 @@ public class TagsPageTest {
openTagsPage();
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + tagCategoryDisplayName + "')]] "));
// Select the created listed team
actions
.moveToElement(webDriver.findElement(By.cssSelector("[data-testid='editTagDescription']")))
.perform();
actions.moveToElement(webDriver.findElement(By.cssSelector("[data-testid='editTagDescription']"))).perform();
Events.click(webDriver, By.cssSelector("[data-testid='editTagDescription']"));
wait.until(ExpectedConditions.elementToBeClickable(By.xpath(enterDescription)));
Events.sendKeys(webDriver, By.xpath(enterDescription), faker.address().toString());
@ -184,14 +178,10 @@ public class TagsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='tags']"));
Events.click(webDriver, By.cssSelector("[data-testid='associatedTagName']"));
Events.sendKeys(
webDriver,
By.cssSelector("[data-testid='associatedTagName']"),
tagCategoryDisplayName + "." + tagDisplayName);
webDriver, By.cssSelector("[data-testid='associatedTagName']"), tagCategoryDisplayName + "." + tagDisplayName);
Events.click(webDriver, By.cssSelector("[data-testid='list-item']"));
Events.click(webDriver, By.cssSelector("[data-testid='saveAssociatedTag']"));
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Tags']")); // Setting/Tags
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + tagCategoryDisplayName + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='usage-count']"));
@ -217,9 +207,7 @@ public class TagsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='usage-count']"));
Events.click(webDriver, By.xpath("//button[@data-testid='table-link']"));
Thread.sleep(waitTime);
actions
.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='tag-conatiner']//span")))
.perform();
actions.moveToElement(webDriver.findElement(By.xpath("//div[@data-testid='tag-conatiner']//span"))).perform();
Events.click(webDriver, By.xpath("//div[@data-testid='tag-conatiner']//span"));
Events.click(webDriver, By.cssSelector("[data-testid='remove']"));
Events.click(webDriver, By.cssSelector("[data-testid='saveAssociatedTag']"));

View File

@ -40,8 +40,7 @@ public class TeamsPageTest {
static String URL = Property.getInstance().getURL();
Integer waitTime = Property.getInstance().getSleepTime();
static Faker faker = new Faker();
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static String enterDescription = "//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
static String teamDisplayName = faker.name().lastName();
static Actions actions;
static WebDriverWait wait;
@ -64,9 +63,7 @@ public class TeamsPageTest {
@Order(1)
public void openTeamsPage() throws InterruptedException {
Events.click(webDriver, By.cssSelector("[data-testid='closeWhatsNew']")); // Close What's new
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Teams']")); // Setting/Teams
Thread.sleep(waitTime);
}
@ -92,9 +89,7 @@ public class TeamsPageTest {
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + teamDisplayName + "')]] "));
// Select the created listed team
for (int i = 0; i <= 10; i++) {
Events.click(
webDriver,
By.cssSelector("[data-testid='add-new-user-button']")); // select add user button
Events.click(webDriver, By.cssSelector("[data-testid='add-new-user-button']")); // select add user button
Events.click(webDriver, By.cssSelector("[data-testid='checkboxAddUser']"));
Events.click(webDriver, By.cssSelector("[data-testid='AddUserSave']"));
Thread.sleep(waitTime);
@ -122,17 +117,14 @@ public class TeamsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='assets']")); // Assets
Events.click(webDriver, By.cssSelector("[data-testid='appbar-item'][id='explore']")); // Explore
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
Events.click(
webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated // Last Updated
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated // Last Updated
Events.click(webDriver, By.xpath("(//button[@data-testid='table-link'])[last()]"));
Events.click(webDriver, By.xpath("(//button[@data-testid='tab'])[4]")); // Manage
Events.click(webDriver, By.cssSelector("[data-testid='owner-dropdown']")); // Owner
Events.sendKeys(webDriver, By.cssSelector("[data-testid='searchInputText']"), teamDisplayName);
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Select User/Team
Events.click(webDriver, By.cssSelector("[data-testid='saveManageTab']")); // Save
Events.click(
webDriver,
By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-button'][id='menu-button-Settings']")); // Setting
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Teams']")); // Setting/Teams
Events.click(webDriver, By.xpath("//*[text()[contains(.,'" + teamDisplayName + "')]] "));
// Select the created listed team

View File

@ -38,8 +38,7 @@ public class TopicDetailsPageTest {
static WebDriver webDriver;
static String url = Property.getInstance().getURL();
static Faker faker = new Faker();
static String enterDescription =
"//div[@data-testid='enterDescription']/div/div[2]/div/div/div/div/div/div";
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();
@ -177,12 +176,9 @@ public class TopicDetailsPageTest {
Events.click(webDriver, By.cssSelector("[data-testid='sortBy']")); // Sort By
Events.click(webDriver, By.cssSelector("[data-testid='list-item']")); // Last Updated
Events.click(webDriver, By.xpath("(//button[@data-testid='table-link'])[last()]"));
wait.until(
ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='breadcrumb-link']")));
wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='breadcrumb-link']")));
Events.click(webDriver, By.cssSelector("[data-testid='breadcrumb-link']"));
wait.until(
ExpectedConditions.elementToBeClickable(
By.cssSelector("[data-testid='edit-description']")));
wait.until(ExpectedConditions.elementToBeClickable(By.cssSelector("[data-testid='edit-description']")));
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
@ -198,10 +194,8 @@ public class TopicDetailsPageTest {
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
for (int i = 1; i <= 3; i++) { // check topics in service
Events.click(
webDriver, By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // topics
Events.click(
webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.click(webDriver, By.xpath("(//tr[@data-testid='column']//td[1]/a)" + "[" + i + "]")); // topics
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']")); // edit description
Events.sendKeys(webDriver, By.xpath(enterDescription), editDescription);
Events.click(webDriver, By.cssSelector("[data-testid='save']"));
webDriver.navigate().refresh();
@ -213,7 +207,7 @@ public class TopicDetailsPageTest {
webDriver.navigate().refresh();
Events.click(webDriver, By.cssSelector("[data-testid='edit-description']"));
Thread.sleep(1000);
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription +"')]] "));
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + editDescription + updateDescription + "')]] "));
Events.click(webDriver, By.cssSelector("[data-testid='cancel']"));
Thread.sleep(waitTime);
webDriver.navigate().back();

View File

@ -1,5 +1,7 @@
package org.openmetadata.catalog.selenium.pagesWithoutData.myData;
import java.time.Duration;
import java.util.ArrayList;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Order;
@ -15,9 +17,6 @@ import org.openqa.selenium.interactions.Actions;
import org.openqa.selenium.support.ui.WebDriverWait;
import org.testng.Assert;
import java.time.Duration;
import java.util.ArrayList;
public class MyDataPageTest {
static WebDriver webDriver;
@ -50,28 +49,52 @@ public class MyDataPageTest {
@Order(2)
public void checkOverview() {
checkWhatsNew();
String tablesCount = webDriver.findElement(By.xpath("//div[@data-testid='tables-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String tablesCount =
webDriver
.findElement(By.xpath("//div[@data-testid='tables-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(tablesCount, "0");
String topicsCount = webDriver.findElement(By.xpath("//div[@data-testid='topics-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String topicsCount =
webDriver
.findElement(By.xpath("//div[@data-testid='topics-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(topicsCount, "0");
String dashboardsCount = webDriver.findElement(By.xpath("//div[@data-testid='dashboards-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String dashboardsCount =
webDriver
.findElement(By.xpath("//div[@data-testid='dashboards-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(dashboardsCount, "0");
String pipelinesCount = webDriver.findElement(By.xpath("//div[@data-testid='pipelines-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String pipelinesCount =
webDriver
.findElement(By.xpath("//div[@data-testid='pipelines-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(pipelinesCount, "0");
String servicesCount = webDriver.findElement(By.xpath("//div[@data-testid='service-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String servicesCount =
webDriver
.findElement(By.xpath("//div[@data-testid='service-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(servicesCount, "0");
String ingestionCount = webDriver.findElement(By.xpath("//div[@data-testid='ingestion-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String ingestionCount =
webDriver
.findElement(By.xpath("//div[@data-testid='ingestion-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(ingestionCount, "0");
String usersCount = webDriver.findElement(By.xpath("//div[@data-testid='user-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String usersCount =
webDriver
.findElement(By.xpath("//div[@data-testid='user-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(usersCount, "0");
String teamsCount = webDriver.findElement(By.xpath("//div[@data-testid='terms-summary']//span[@data-testid='filter-count']")).getAttribute("innerHTML");
String teamsCount =
webDriver
.findElement(By.xpath("//div[@data-testid='terms-summary']//span[@data-testid='filter-count']"))
.getAttribute("innerHTML");
Assert.assertEquals(teamsCount, "0");
}
@ -79,7 +102,8 @@ public class MyDataPageTest {
@Order(3)
public void checkRecentViews() throws Exception {
checkWhatsNew();
WebElement recentViews = webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "No recently viewed data!" + "')]] "));
WebElement recentViews =
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "No recently viewed data!" + "')]] "));
if (!recentViews.isDisplayed()) {
throw new Exception("There shouldn't be any viewed data");
}
@ -89,7 +113,8 @@ public class MyDataPageTest {
@Order(4)
public void checkRecentSearch() throws Exception {
checkWhatsNew();
WebElement recentSearch = webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "No searched terms!" + "')]] "));
WebElement recentSearch =
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "No searched terms!" + "')]] "));
if (!recentSearch.isDisplayed()) {
throw new Exception("There shouldn't be any searched terms");
}
@ -99,7 +124,8 @@ public class MyDataPageTest {
@Order(5)
public void checkMyDataTab() throws Exception {
checkWhatsNew();
WebElement myDataResults = webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "You have not owned anything yet!" + "')]] "));
WebElement myDataResults =
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "You have not owned anything yet!" + "')]] "));
if (!myDataResults.isDisplayed()) {
throw new Exception("There shouldn't be any owned data");
}
@ -109,7 +135,8 @@ public class MyDataPageTest {
@Order(6)
public void checkFollowingTab() throws Exception {
checkWhatsNew();
WebElement followResults = webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "You have not followed anything yet!" + "')]] "));
WebElement followResults =
webDriver.findElement(By.xpath("//*[text()[contains(.,'" + "You have not followed anything yet!" + "')]] "));
if (!followResults.isDisplayed()) {
throw new Exception("There shouldn't be any followed data");
}
@ -121,7 +148,8 @@ public class MyDataPageTest {
checkWhatsNew();
Events.sendEnter(webDriver, By.cssSelector("[id='searchBox']"));
Thread.sleep(2000);
String searchedEntity = webDriver.findElement(By.cssSelector("[data-testid='no-search-results']")).getAttribute("innerHTML");
String searchedEntity =
webDriver.findElement(By.cssSelector("[data-testid='no-search-results']")).getAttribute("innerHTML");
Assert.assertEquals(searchedEntity, "No matching data assets found");
}

View File

@ -1,5 +1,5 @@
/*
* Copyright 2021 Collate
* Copyright 2021 Collate
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at