adding parallel config, trial branch for trial run

This commit is contained in:
Parth Panchal 2021-11-18 18:08:29 +05:30
parent 689490692b
commit e94e9489d3
13 changed files with 67 additions and 23 deletions

View File

@ -8,6 +8,7 @@ on:
branches: [main]
pull_request:
branches: [main]
create:
jobs:
build:

View File

@ -23,6 +23,8 @@ 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 org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -36,6 +38,7 @@ import org.openqa.selenium.support.ui.WebDriverWait;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class DashboardDetailsPageTest {
static WebDriver webDriver;
@ -49,7 +52,7 @@ public class DashboardDetailsPageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
options.addArguments("--window-size=1280,800");

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.dashboardService;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -38,6 +40,7 @@ import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class DashboardServiceTestPage {
static WebDriver webDriver;
@ -51,7 +54,7 @@ public class DashboardServiceTestPage {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
webDriver = new ChromeDriver(options);

View File

@ -17,6 +17,9 @@
package org.openmetadata.catalog.selenium.pages.databaseService;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.junit.jupiter.api.parallel.ResourceLock;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -38,6 +41,7 @@ import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class DatabaseServicePageTest {
@ -52,7 +56,7 @@ public class DatabaseServicePageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
webDriver = new ChromeDriver(options);

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.messagingService;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -38,6 +40,7 @@ import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class MessagingServicePageTest {
static WebDriver webDriver;
@ -51,7 +54,7 @@ public class MessagingServicePageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
webDriver = new ChromeDriver(options);

View File

@ -16,6 +16,8 @@
package org.openmetadata.catalog.selenium.pages.myData;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -33,6 +35,7 @@ import org.junit.jupiter.api.Order;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
public class MyDataPageTest {
static WebDriver webDriver;
@ -42,9 +45,10 @@ public class MyDataPageTest {
static WebDriverWait wait;
@Execution(ExecutionMode.CONCURRENT)
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
webDriver = new ChromeDriver(options);
@ -57,6 +61,7 @@ public class MyDataPageTest {
@Test
@Order(1)
public void checkWhatsNew() {
openMetadataWindow();
Events.click(webDriver, By.xpath("//ul[@class='slick-dots testid-dots-button']//li[2]")); // What's new page 2
Events.click(webDriver, By.xpath("//ul[@class='slick-dots testid-dots-button']//li[3]")); // What's new page 3
Events.click(webDriver, By.xpath("//ul[@class='slick-dots testid-dots-button']//li[4]")); // What's new page 4
@ -68,6 +73,7 @@ public class MyDataPageTest {
@Test
@Order(2)
public void checkTabs() {
openMetadataWindow();
checkWhatsNew();
Events.click(webDriver, By.cssSelector("[data-testid='tab'][id='myDataTab']")); // My Data
Events.click(webDriver, By.cssSelector("[data-testid='tab'][id='followingTab']")); // Following
@ -76,6 +82,7 @@ public class MyDataPageTest {
@Test
@Order(3)
public void checkOverview() throws InterruptedException {
openMetadataWindow();
checkWhatsNew();
Events.click(webDriver, By.cssSelector("[data-testid='tables']")); // Tables
webDriver.navigate().back();
@ -95,6 +102,7 @@ public class MyDataPageTest {
@Test
@Order(4)
public void checkSearchBar() throws InterruptedException {
openMetadataWindow();
checkWhatsNew();
wait.until(ExpectedConditions.elementToBeClickable(
webDriver.findElement(By.cssSelector("[id='searchBox']")))); // Search bar/dim
@ -107,6 +115,7 @@ public class MyDataPageTest {
@Test
@Order(5)
public void checkHeaders() {
openMetadataWindow();
checkWhatsNew();
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());
Events.click(webDriver, By.cssSelector("[data-testid='appbar-item'][id='explore']")); // Explore
@ -137,21 +146,22 @@ public class MyDataPageTest {
@Test
@Order(6)
public void checkLogout() {
openMetadataWindow();
checkWhatsNew();
Events.click(webDriver, By.cssSelector("[data-testid='greeting-text']"));
Events.click(webDriver, By.cssSelector("[data-testid='menu-item-Logout']"));
}
@AfterEach
public void closeTabs() {
ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());
String originalHandle = webDriver.getWindowHandle();
for (String handle : webDriver.getWindowHandles()) {
if (!handle.equals(originalHandle)) {
webDriver.switchTo().window(handle);
webDriver.close();
}
}
webDriver.switchTo().window(tabs.get(0)).close();
}
// @AfterEach
// public void closeTabs() {
// ArrayList<String> tabs = new ArrayList<>(webDriver.getWindowHandles());
// String originalHandle = webDriver.getWindowHandle();
// for (String handle : webDriver.getWindowHandles()) {
// if (!handle.equals(originalHandle)) {
// webDriver.switchTo().window(handle);
// webDriver.close();
// }
// }
// webDriver.switchTo().window(tabs.get(0)).close();
// }
}

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.pipelineDetails;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -38,6 +40,7 @@ import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class PipelineDetailsPageTest {
static WebDriver webDriver;
@ -51,7 +54,7 @@ public class PipelineDetailsPageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
webDriver = new ChromeDriver(options);

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.pipelineService;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -38,6 +40,7 @@ import java.time.Duration;
import java.util.ArrayList;
import java.util.List;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class PipelineServiceTestPage {
static WebDriver webDriver;
@ -51,7 +54,7 @@ public class PipelineServiceTestPage {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
webDriver = new ChromeDriver(options);

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.tableDetails;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -37,6 +39,7 @@ import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class TableDetailsPageTest {
static WebDriver webDriver;
@ -50,7 +53,7 @@ public class TableDetailsPageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--headless");
options.addArguments("--window-size=1280,800");

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.tags;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -36,6 +38,7 @@ import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class TagsPageTest {
@ -52,7 +55,7 @@ public class TagsPageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--no-sandbox");
options.addArguments("--disable-dev-shm-usage");

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.teams;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -36,6 +38,7 @@ import org.junit.jupiter.api.MethodOrderer;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class TeamsPageTest {
@ -50,7 +53,7 @@ public class TeamsPageTest {
@BeforeEach
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
ChromeOptions options = new ChromeOptions();
options.addArguments("--no-sandbox");
options.addArguments("--disable-dev-shm-usage");

View File

@ -17,6 +17,8 @@
package org.openmetadata.catalog.selenium.pages.topicDetails;
import com.github.javafaker.Faker;
import org.junit.jupiter.api.parallel.Execution;
import org.junit.jupiter.api.parallel.ExecutionMode;
import org.openmetadata.catalog.selenium.events.Events;
import org.openmetadata.catalog.selenium.properties.Property;
import org.openqa.selenium.By;
@ -32,6 +34,7 @@ import org.testng.annotations.Test;
import java.time.Duration;
import java.util.ArrayList;
@Execution(ExecutionMode.CONCURRENT)
public class TopicDetailsPageTest {
static WebDriver webDriver;
static String url = Property.getInstance().getURL();
@ -43,7 +46,7 @@ public class TopicDetailsPageTest {
@BeforeMethod
public void openMetadataWindow() {
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/linux/chromedriver");
System.setProperty("webdriver.chrome.driver", "src/test/resources/drivers/macM1/chromedriver");
webDriver = new ChromeDriver();
actions = new Actions(webDriver);
wait = new WebDriverWait(webDriver, Duration.ofSeconds(30));

View File

@ -0,0 +1,2 @@
junit.jupiter.execution.parallel.enabled = true
junit.jupiter.execution.parallel.mode.classes.default = concurrent