This is an automated email from the ASF dual-hosted git repository.
liuxiaochun pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/incubator-dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new c82758c e2e add the case of deleting user and tenant (#2210)
c82758c is described below
commit c82758c5054e0c8af8f2c9ef73d1af8653e2444f
Author: xingchun-chen <[email protected]>
AuthorDate: Tue Mar 17 17:57:12 2020 +0800
e2e add the case of deleting user and tenant (#2210)
* add e2e
---
.../apache/dolphinscheduler/base/BaseDriver.java | 8 +-
.../org/apache/dolphinscheduler/base/BaseTest.java | 17 ++---
.../apache/dolphinscheduler/data/LoginData.java | 2 +-
.../data/project/CreatWorkflowData.java | 2 +-
...reatProjectData.java => CreateProjectData.java} | 4 +-
...atWorkflowData.java => CreateWorkflowData.java} | 31 +++++++-
.../data/security/TenantManageData.java | 10 +--
.../data/security/UserManageData.java | 5 +-
.../locator/project/CreateWorkflowLocator.java | 69 +++++++++++++++--
.../locator/security/TenantManageLocator.java | 8 +-
.../locator/security/UserManageLocator.java | 3 +
.../apache/dolphinscheduler/page/LoginPage.java | 14 +++-
.../page/project/CreateProjectPage.java | 11 +--
.../page/project/CreateWorkflowPage.java | 89 +++++++++++++++++-----
.../page/security/TenantManagePage.java | 26 ++++---
.../page/security/UserManagePage.java | 25 ++++--
.../dolphinscheduler/testcase/LoginTest.java | 35 +++------
.../DeleteTenantTest.java} | 17 +++--
.../DeleteUserTest.java} | 16 ++--
.../testcase/project/CreateProjectTest.java | 7 +-
.../testcase/project/CreateWorkflowTest.java | 10 ++-
.../testcase/security/TenantManageTest.java | 11 ++-
.../testcase/security/UserManageTest.java | 8 +-
e2e/suite.xml | 18 -----
e2e/testng.xml | 28 ++++---
25 files changed, 317 insertions(+), 157 deletions(-)
diff --git a/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseDriver.java
b/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseDriver.java
index 7d3ab9b..044e28f 100644
--- a/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseDriver.java
+++ b/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseDriver.java
@@ -19,6 +19,7 @@ package org.apache.dolphinscheduler.base;
import org.apache.dolphinscheduler.constant.TestConstant;
import org.apache.dolphinscheduler.util.PropertiesReader;
+import org.openqa.selenium.Cookie;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;
@@ -35,7 +36,7 @@ public class BaseDriver {
/**
* driver
*/
- private WebDriver driver;
+ private static WebDriver driver;
/**
* chrome driver path
@@ -88,6 +89,7 @@ public class BaseDriver {
chromeOptions.setPageLoadStrategy(PageLoadStrategy.NONE);
chromeOptions.addArguments("--no-sandbox");
chromeOptions.addArguments("--disable-dev-shm-usage");
+ //Browser client running requires annotation --headless
chromeOptions.addArguments("--headless");
chromeOptions.addArguments("--disable-gpu");
chromeOptions.addArguments("--whitelisted-ips");
@@ -120,7 +122,7 @@ public class BaseDriver {
*
* @return driver
*/
- public WebDriver getDriver() {
+ public static WebDriver getDriver() {
return driver;
}
@@ -141,7 +143,7 @@ public class BaseDriver {
public void closeBrowser() throws InterruptedException {
// JS Show a pop-up box to indicate the end of the test
Thread.sleep(TestConstant.ONE_THOUSANG);
- ((JavascriptExecutor) driver).executeScript("alert('Test completed,
browser closes after 3s')");
+// ((JavascriptExecutor) driver).executeScript("alert('Test completed,
browser closes after 3s')");
Thread.sleep(TestConstant.THREE_THOUSANG);
if (driver != null) {
driver.quit();
diff --git a/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseTest.java
index c12c19f..88012e9 100644
--- a/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseTest.java
+++ b/e2e/src/test/java/org/apache/dolphinscheduler/base/BaseTest.java
@@ -17,7 +17,6 @@
package org.apache.dolphinscheduler.base;
-import org.apache.dolphinscheduler.page.LoginPage;
import org.apache.dolphinscheduler.util.PropertiesReader;
import org.openqa.selenium.WebDriver;
import org.testng.annotations.*;
@@ -28,6 +27,7 @@ import java.util.Properties;
/**
* base test class
*/
+@Test(groups={"functionTests"})
public class BaseTest {
/**
* properties
@@ -43,7 +43,7 @@ public class BaseTest {
/**
* driver
*/
- public WebDriver driver;
+ public static WebDriver driver;
/**
* Executed before executing a test suite
@@ -54,7 +54,7 @@ public class BaseTest {
*/
@BeforeSuite(alwaysRun = true)
@Parameters({"propertiesPath"})
- public void
beforeSuite(@Optional("src/test/resources/config/config.properties") String
propertiesPath) throws IOException {
+ public void
beforeSuite(@Optional("src/test/resources/config/config.properties") String
propertiesPath) throws Exception {
// read properties
properties = PropertiesReader.readProperties(propertiesPath);
}
@@ -70,14 +70,13 @@ public class BaseTest {
driver = baseDriver.getDriver();
}
+
+
/**
* Executed before executing a class method in a test case
*/
@BeforeClass(alwaysRun = true)
- public void setUp() throws IOException, InterruptedException {
- LoginPage loginPage = new LoginPage(driver);
- loginPage.jumpPage();
- loginPage.login();
+ public void setUp() throws Exception {
}
@@ -85,7 +84,7 @@ public class BaseTest {
* Execute after executing a class method in a test case
*/
@AfterClass(alwaysRun = true)
- public void afterClass() {
+ public void afterClass() throws InterruptedException {
// logout
}
@@ -102,6 +101,6 @@ public class BaseTest {
* Execute after executing a testsuite
*/
@AfterSuite(alwaysRun = true)
- public void afterSuite() {
+ public void afterSuite() throws InterruptedException {
}
}
\ No newline at end of file
diff --git a/e2e/src/test/java/org/apache/dolphinscheduler/data/LoginData.java
b/e2e/src/test/java/org/apache/dolphinscheduler/data/LoginData.java
index 5328495..e56df5a 100644
--- a/e2e/src/test/java/org/apache/dolphinscheduler/data/LoginData.java
+++ b/e2e/src/test/java/org/apache/dolphinscheduler/data/LoginData.java
@@ -39,5 +39,5 @@ public class LoginData {
*/
public static final String PASSWORD = PropertiesReader.getKey("PASSWORD");
- public static final String TENANT = "Tenant Manage - DolphinScheduler";
+ public static final String TENANT = "租户管理 - DolphinScheduler";
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
b/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
index 765a54f..70f4238 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
@@ -18,7 +18,7 @@ package org.apache.dolphinscheduler.data.project;
public class CreatWorkflowData {
//input shell task name
- public static final String SHELL_TASK_NAME = "shell task description test";
+ public static final String SHELL_TASK_NAME = "shell task description
test1";
//input shell task description
public static final String SHELL_TASK_DESCRIPTION = "shell task
description test";
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatProjectData.java
b/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreateProjectData.java
similarity index 91%
rename from
e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatProjectData.java
rename to
e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreateProjectData.java
index 8f6c9c8..57d79e8 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatProjectData.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreateProjectData.java
@@ -16,9 +16,9 @@
*/
package org.apache.dolphinscheduler.data.project;
-public class CreatProjectData {
+public class CreateProjectData {
// create project name
- public static final String PROJECT_NAME = "selenium_project";
+ public static final String PROJECT_NAME = "selenium_project_3";
// create project description
public static final String DESCRIPTION = "test create project description";
// project page title
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
b/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreateWorkflowData.java
similarity index 61%
copy from
e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
copy to
e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreateWorkflowData.java
index 765a54f..31b5bdd 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreatWorkflowData.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/data/project/CreateWorkflowData.java
@@ -16,9 +16,12 @@
*/
package org.apache.dolphinscheduler.data.project;
-public class CreatWorkflowData {
+public class CreateWorkflowData {
+ /**
+ * create workflow data
+ */
//input shell task name
- public static final String SHELL_TASK_NAME = "shell task description test";
+ public static final String SHELL_TASK_NAME = "shell_task_selenium_5";
//input shell task description
public static final String SHELL_TASK_DESCRIPTION = "shell task
description test";
@@ -43,4 +46,28 @@ public class CreatWorkflowData {
//create workflow title
public static final String WORKFLOW_TITLE = "创建流程定义 - DolphinScheduler";
+
+ /**
+ * save workflow data
+ */
+ //input workflow name
+ public static final String INPUT_WORKFLOW_NAME = "selenium_shell_1";
+
+ //input workflow description
+ public static final String INPUT_WORKFLOW_DESCRIPTION = "test
selenium_shell_1 description";
+
+ //input workflow timeout
+ public static final String INPUT_WORKFLOW_TIMEOUT = "30";
+
+ //input workflow global parameters
+ public static final String INPUT_WORKFLOW_GLOBAL_PARAMETERS =
"selenium_global_parameters_1";
+
+ //input workflow global parameters value
+ public static final String INPUT_WORKFLOW_GLOBAL_PARAMETERS_VALUES =
"selenium_global_parameters_value_1";
+
+ //input to add workflow global parameters
+ public static final String INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS =
"selenium_global_parameters_2";
+
+ //input to add workflow global parameters value
+ public static final String INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS_VALUES =
"selenium_global_parameters_value_2";
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/data/security/TenantManageData.java
b/e2e/src/test/java/org/apache/dolphinscheduler/data/security/TenantManageData.java
index e6f6ee6..100351b 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/data/security/TenantManageData.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/data/security/TenantManageData.java
@@ -20,18 +20,12 @@
*/
package org.apache.dolphinscheduler.data.security;
-import org.apache.dolphinscheduler.data.LoginData;
public class TenantManageData {
/**
- * Tenant URL
- */
- public static final String TENANAT_URL = LoginData.URL +
"/ui/#/security/tenant";
-
- /**
* Tenant Code
*/
- public static final String TENANAT_CODE = "dolphinscheduler_tenant_code2";
+ public static final String TENANAT_CODE = "dolphinscheduler_tenant_code15";
/**
* Tenant Name
@@ -48,7 +42,7 @@ public class TenantManageData {
*/
public static final String DESCRIPTION = "creat tenant test";
- public static final String TENANAT_MANAGE = "Tenant Manage -
DolphinScheduler";
+ public static final String TENANAT_MANAGE = "租户管理 - DolphinScheduler";
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/data/security/UserManageData.java
b/e2e/src/test/java/org/apache/dolphinscheduler/data/security/UserManageData.java
index 03c985f..6fcd923 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/data/security/UserManageData.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/data/security/UserManageData.java
@@ -16,12 +16,9 @@
*/
package org.apache.dolphinscheduler.data.security;
-import org.apache.dolphinscheduler.data.LoginData;
public class UserManageData {
- public static final String USER_URL = LoginData.URL +
"/ui/#/security/users";
-
- public static final String USERNAME = "selenium111";
+ public static final String USERNAME = "selenium_5";
public static final String PASSWORD = "123456qwe";
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/locator/project/CreateWorkflowLocator.java
b/e2e/src/test/java/org/apache/dolphinscheduler/locator/project/CreateWorkflowLocator.java
index f063d6e..25defcf 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/locator/project/CreateWorkflowLocator.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/locator/project/CreateWorkflowLocator.java
@@ -20,12 +20,20 @@ package org.apache.dolphinscheduler.locator.project;
import org.openqa.selenium.By;
public class CreateWorkflowLocator {
+
+ /**
+ * jump workflow define page
+ */
+
// click project name
public static final By CLICK_PROJECT_NAME = By.xpath("//span/a");
// click workflow define
public static final By CLICK_WORKFLOW_DEFINE = By.xpath("//li/span");
+ /**
+ * create workflow
+ */
// click create workflow button
public static final By CLICK_CREATE_WORKFLOW_BUTTON =
By.xpath("//button/span");
@@ -96,15 +104,15 @@ public class CreateWorkflowLocator {
public static final By INPUT_CUSTOM_PARAMETERS =
By.xpath("//div[2]/div/div/div/div/div/input");
//input custom parameters value
- public static final By INPUT_CUSTOM_PARAMETERS_VALUE =
By.xpath("//div[2]/input");
+ public static final By INPUT_CUSTOM_PARAMETERS_VALUE =
By.xpath("//div[2]/div/div/div/div[1]/div[2]/input");
- //click add custom parameters
- public static final By CLICK_ADD_CUSTOM_PARAMETERS =
By.xpath("//span[2]/a/em");
+ //click to add custom parameters
+ public static final By CLICK_ADD_CUSTOM_PARAMETERS =
By.xpath("//div[2]/div/div/div/div/span[2]/a/em");
- //input add custom parameters
- public static final By INPUT_ADD_CUSTOM_PARAMETERS =
By.xpath("//div[2]/div/div/div/div[2]/div/input");
+ //input to add custom parameters
+ public static final By INPUT_ADD_CUSTOM_PARAMETERS =
By.xpath("//div[2]/div/div/div/div[2]/div[1]/input");
- //input add custom parameters value
+ //input to add custom parameters value
public static final By INPUT_ADD_CUSTOM_PARAMETERS_VALUE =
By.xpath("//div[2]/div[2]/input");
//delete custom parameters
@@ -112,4 +120,53 @@ public class CreateWorkflowLocator {
//click submit button
public static final By CLICK_SUBMIT_BUTTON = By.xpath("//button[2]/span");
+
+
+ /**
+ * save workflow
+ */
+ //click save workflow button
+ public static final By CLICK_SAVE_WORKFLOW_BUTTON =
By.xpath("//button/span");
+
+ //input workflow name
+ public static final By INPUT_WORKFLOW_NAME = By.xpath("//input");
+
+ //input workflow description
+ public static final By INPUT_WORKFLOW_DESCRIPTION = By.xpath("//textarea");
+
+ //select tenant
+ public static final By CLICK_TENANT =
By.xpath("//div[4]/div/div/div/input");
+ public static final By SELECT_TENANT =
By.xpath("//div[2]/div/div/div/ul/li/span");
+
+
+ //click workflow timeout alarm
+ public static final By CLICK_WORKFLOW_TIMEOUT_ALARM =
By.xpath("//span[2]/span/span");
+
+ //input workflow timeout
+ public static final By INPUT_WORKFLOW_TIMEOUT =
By.xpath("//span/div/input");
+
+ //click workflow global parameters
+ public static final By CLICK_WORKFLOW_GLOBAL_PARAMETERS =
By.xpath("//span/a/em");
+
+ //input workflow global parameters
+ public static final By INPUT_WORKFLOW_GLOBAL_PARAMETERS =
By.xpath("//div[8]/div/div/div/div/input");
+
+ //input workflow global parameters value
+ public static final By INPUT_WORKFLOW_GLOBAL_PARAMETERS_VALUES =
By.xpath("//div[2]/input");
+
+ //click to add workflow global parameters
+ public static final By CLICK_ADD_WORKFLOW_GLOBAL_PARAMETERS =
By.xpath("//span[2]/a/em");
+
+ //input to add workflow global parameters
+ public static final By INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS =
By.xpath("//div[8]/div/div/div[2]/div/input");
+
+ //input to add workflow global parameters value
+ public static final By INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS_VALUES =
By.xpath("//div[2]/div[2]/input");
+
+ //delete workflow global parameters value
+ public static final By CLICK_DELETE_WORKFLOW_GLOBAL_PARAMETERS =
By.xpath("//div[2]/span/a/em");
+
+ //click add button
+ public static final By CLICK_ADD_BUTTON = By.xpath("//button[2]/span");
+
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/TenantManageLocator.java
b/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/TenantManageLocator.java
index 7d9c8a5..d95265c 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/TenantManageLocator.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/TenantManageLocator.java
@@ -19,7 +19,9 @@ package org.apache.dolphinscheduler.locator.security;
import org.openqa.selenium.By;
public class TenantManageLocator{
- public static final By CREATE_TENANT_BUTTON =
By.xpath("//button[@class='ans-btn ans-btn-ghost ans-btn-small']");
+ public static final By TENANT_MANAGE =
By.xpath("//div[2]/div/a/div/a/span");
+
+ public static final By CREATE_TENANT_BUTTON = By.xpath("//button/span");
public static final By TENANT_INPUT_CODE =
By.xpath("//div[2]/div/div/div[2]/div/input");
@@ -30,4 +32,8 @@ public class TenantManageLocator{
public static final By DESCRIPTION = By.xpath("//textarea");
public static final By SUBMIT_BUTTON = By.xpath("//div[3]/button[2]/span");
+
+ public static final By DELETE_TENANT_BUTTON =
By.xpath("//div[3]/div[1]/div/table/tr[2]/td[8]/span/button");
+
+ public static final By CONFIRM_DELETE_TENANT_BUTTON =
By.xpath("//div[2]/div/button[2]/span");
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/UserManageLocator.java
b/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/UserManageLocator.java
index 0d84692..b5ecccc 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/UserManageLocator.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/locator/security/UserManageLocator.java
@@ -42,4 +42,7 @@ public class UserManageLocator {
public static final By SUBMIT = By.xpath("//div[3]/button[2]/span");
+ public static final By DELETE_USER_BUTTON = By.xpath("//span[2]/button/i");
+
+ public static final By CONFIRM_DELETE_USER_BUTTON =
By.xpath("//div[2]/div/button[2]/span");
}
diff --git a/e2e/src/test/java/org/apache/dolphinscheduler/page/LoginPage.java
b/e2e/src/test/java/org/apache/dolphinscheduler/page/LoginPage.java
index cd6b318..14970be 100644
--- a/e2e/src/test/java/org/apache/dolphinscheduler/page/LoginPage.java
+++ b/e2e/src/test/java/org/apache/dolphinscheduler/page/LoginPage.java
@@ -21,6 +21,7 @@ import org.apache.dolphinscheduler.constant.TestConstant;
import org.apache.dolphinscheduler.data.LoginData;
import org.apache.dolphinscheduler.locator.LoginLocator;
import org.apache.dolphinscheduler.util.RedisUtil;
+import org.openqa.selenium.Cookie;
import org.openqa.selenium.WebDriver;
@@ -38,18 +39,25 @@ public class LoginPage extends PageCommon {
/**
* jump page
*/
- public void jumpPage() {
- System.out.println("jump login page");
+ public void jumpPageEnlish() {
+ System.out.println("jump to English login page");
super.jumpPage(LoginData.URL);
+ Cookie cookie = new Cookie("language", "en_US", "/", null);
+ driver.manage().addCookie(cookie);
}
+ public void jumpPageChinese() {
+ super.jumpPage(LoginData.URL);
+ Cookie cookie = new Cookie("language", "zh_CN", "/", null);
+
+ driver.manage().addCookie(cookie);
+ }
/**
* login
*
* @return Whether to enter the specified page after searching
*/
public boolean login() throws InterruptedException {
- System.out.println("LoginPage");
// login data
sendInput(LoginLocator.LOGIN_INPUT_USER, LoginData.USER);
sendInput(LoginLocator.LOGIN_INPUT_PASSWORD, LoginData.PASSWORD);
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateProjectPage.java
b/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateProjectPage.java
index 8dd1010..d8e1ef6 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateProjectPage.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateProjectPage.java
@@ -18,7 +18,7 @@ package org.apache.dolphinscheduler.page.project;
import org.apache.dolphinscheduler.common.PageCommon;
import org.apache.dolphinscheduler.constant.TestConstant;
-import org.apache.dolphinscheduler.data.project.CreatProjectData;
+import org.apache.dolphinscheduler.data.project.CreateProjectData;
import org.apache.dolphinscheduler.locator.project.CreateProjectLocator;
import org.openqa.selenium.WebDriver;
@@ -26,6 +26,7 @@ public class CreateProjectPage extends PageCommon {
public CreateProjectPage(WebDriver driver) {
super(driver);
}
+
/**
* jump page
*/
@@ -36,7 +37,7 @@ public class CreateProjectPage extends PageCommon {
}
/**
- * creatTenant
+ * createTenant
*
* @return Whether to enter the specified page after creat tenant
*/
@@ -46,13 +47,13 @@ public class CreateProjectPage extends PageCommon {
Thread.sleep(TestConstant.ONE_THOUSANG);
// input create project data
- sendInput(CreateProjectLocator.PROJECT_NAME,
CreatProjectData.PROJECT_NAME);
- sendInput(CreateProjectLocator.PROJECT_DESCRIPTION,
CreatProjectData.DESCRIPTION);
+ sendInput(CreateProjectLocator.PROJECT_NAME,
CreateProjectData.PROJECT_NAME);
+ sendInput(CreateProjectLocator.PROJECT_DESCRIPTION,
CreateProjectData.DESCRIPTION);
// click submit button
clickButton(CreateProjectLocator.SUBMIT_BUTTON);
// Whether to enter the specified page after submit
- return ifTitleContains(CreatProjectData.PROJECT_TITLE);
+ return ifTitleContains(CreateProjectData.PROJECT_TITLE);
}
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateWorkflowPage.java
b/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateWorkflowPage.java
index aeec83c..d115124 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateWorkflowPage.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/page/project/CreateWorkflowPage.java
@@ -18,7 +18,7 @@ package org.apache.dolphinscheduler.page.project;
import org.apache.dolphinscheduler.common.PageCommon;
import org.apache.dolphinscheduler.constant.TestConstant;
-import org.apache.dolphinscheduler.data.project.CreatWorkflowData;
+import org.apache.dolphinscheduler.data.project.CreateWorkflowData;
import org.apache.dolphinscheduler.locator.project.CreateWorkflowLocator;
import org.openqa.selenium.WebDriver;
@@ -26,29 +26,33 @@ public class CreateWorkflowPage extends PageCommon {
public CreateWorkflowPage(WebDriver driver) {
super(driver);
}
+
/**
- * jump page
+ * jump create workflow page
*/
-
public boolean createWorkflow() throws InterruptedException {
+ System.out.println("Click on the project name to jump to the project
homepage");
// click project name
clickElement(CreateWorkflowLocator.CLICK_PROJECT_NAME);
Thread.sleep(TestConstant.ONE_THOUSANG);
+ System.out.println("Click on workflow define");
// click workflow define
clickElement(CreateWorkflowLocator.CLICK_WORKFLOW_DEFINE);
Thread.sleep(TestConstant.ONE_THOUSANG);
+ System.out.println("Click create workflow button");
// click create workflow button
clickElement(CreateWorkflowLocator.CLICK_CREATE_WORKFLOW_BUTTON);
Thread.sleep(TestConstant.ONE_THOUSANG);
+ System.out.println("drag shell task");
//drag shell_task
dragAndDrop(CreateWorkflowLocator.MOUSE_DOWN_AT_SHELL,CreateWorkflowLocator.MOUSE_MOVE_SHELL_AT_DAG);
//input shell task _name
- sendInput(CreateWorkflowLocator.INPUT_SHELL_TASK_NAME ,
CreatWorkflowData.SHELL_TASK_NAME);
+ sendInput(CreateWorkflowLocator.INPUT_SHELL_TASK_NAME ,
CreateWorkflowData.SHELL_TASK_NAME);
//click stop run type
clickElement(CreateWorkflowLocator.CLICK_STOP_RUN_TYPE);
@@ -57,7 +61,7 @@ public class CreateWorkflowPage extends PageCommon {
clickElement(CreateWorkflowLocator.CLICK_NORMAL_RUN_TYPE);
//input shell task description
- sendInput(CreateWorkflowLocator.INPUT_SHELL_TASK_DESCRIPTION ,
CreatWorkflowData.SHELL_TASK_DESCRIPTION);
+ sendInput(CreateWorkflowLocator.INPUT_SHELL_TASK_DESCRIPTION ,
CreateWorkflowData.SHELL_TASK_DESCRIPTION);
//select task priority
clickElement(CreateWorkflowLocator.CLICK_TASK_PRIORITY);
@@ -73,19 +77,15 @@ public class CreateWorkflowPage extends PageCommon {
//select failed retry interval
clickElement(CreateWorkflowLocator.SELECT_FAIL_RETRIES_INTERVAL);
-
//click timeout alarm
clickElement(CreateWorkflowLocator.CLICK_TIMEOUT_ALARM);
-
//select timeout fail
clickElement(CreateWorkflowLocator.SELECT_TIMEOUT_FAIL);
-
//cancel timeout alarm
clickElement(CreateWorkflowLocator.CANCEL_TIMEOUT_ALARM);
-
//select timeout alarm
clickElement(CreateWorkflowLocator.SELECT_TIMEOUT_ALARM);
@@ -94,10 +94,10 @@ public class CreateWorkflowPage extends PageCommon {
clearInput(CreateWorkflowLocator.SELECT_TIMEOUT);
//input timeout
-
sendInput(CreateWorkflowLocator.SELECT_TIMEOUT,CreatWorkflowData.INPUT_TIMEOUT);
+ sendInput(CreateWorkflowLocator.SELECT_TIMEOUT,
CreateWorkflowData.INPUT_TIMEOUT);
//click codeMirror and input script
- inputCodeMirror(CreateWorkflowLocator.CLICK_CODE_MIRROR,
CreateWorkflowLocator.INPUT_SCRIPT,CreatWorkflowData.SHELL_SCRIPT);
+ inputCodeMirror(CreateWorkflowLocator.CLICK_CODE_MIRROR,
CreateWorkflowLocator.INPUT_SCRIPT, CreateWorkflowData.SHELL_SCRIPT);
scrollToElementBottom();
Thread.sleep(TestConstant.ONE_THOUSANG);
@@ -105,10 +105,10 @@ public class CreateWorkflowPage extends PageCommon {
clickElement(CreateWorkflowLocator.CLICK_CUSTOM_PARAMETERS);
//input custom parameters
- sendInput(CreateWorkflowLocator.INPUT_CUSTOM_PARAMETERS,
CreatWorkflowData.INPUT_CUSTOM_PARAMETERS);
+ sendInput(CreateWorkflowLocator.INPUT_CUSTOM_PARAMETERS,
CreateWorkflowData.INPUT_CUSTOM_PARAMETERS);
//input custom parameters value
- sendInput(CreateWorkflowLocator.INPUT_CUSTOM_PARAMETERS_VALUE,
CreatWorkflowData.INPUT_CUSTOM_PARAMETERS_VALUE);
+ sendInput(CreateWorkflowLocator.INPUT_CUSTOM_PARAMETERS_VALUE,
CreateWorkflowData.INPUT_CUSTOM_PARAMETERS_VALUE);
//click add custom parameters
clickElement(CreateWorkflowLocator.CLICK_ADD_CUSTOM_PARAMETERS);
@@ -117,10 +117,10 @@ public class CreateWorkflowPage extends PageCommon {
Thread.sleep(TestConstant.ONE_THOUSANG);
//input add custom parameters
-
sendInput(CreateWorkflowLocator.INPUT_ADD_CUSTOM_PARAMETERS,CreatWorkflowData.INPUT_ADD_CUSTOM_PARAMETERS);
+ sendInput(CreateWorkflowLocator.INPUT_ADD_CUSTOM_PARAMETERS,
CreateWorkflowData.INPUT_ADD_CUSTOM_PARAMETERS);
//input add custom parameters value
-
sendInput(CreateWorkflowLocator.INPUT_ADD_CUSTOM_PARAMETERS_VALUE,CreatWorkflowData.INPUT_ADD_CUSTOM_PARAMETERS_VALUE);
+ sendInput(CreateWorkflowLocator.INPUT_ADD_CUSTOM_PARAMETERS_VALUE,
CreateWorkflowData.INPUT_ADD_CUSTOM_PARAMETERS_VALUE);
//click delete custom parameters
clickElement(CreateWorkflowLocator.CLICK_DELETE_CUSTOM_PARAMETERS);
@@ -129,9 +129,64 @@ public class CreateWorkflowPage extends PageCommon {
//click submit button
clickElement(CreateWorkflowLocator.CLICK_SUBMIT_BUTTON);
Thread.sleep(TestConstant.ONE_THOUSANG);
-
+ System.out.println("Task node set up successfully");
+ System.out.println("move to Dag Element ");
moveToDragElement(CreateWorkflowLocator.MOUSE_MOVE_SHELL_AT_DAG,-300,-100);
- return ifTitleContains(CreatWorkflowData.WORKFLOW_TITLE);
+ return ifTitleContains(CreateWorkflowData.WORKFLOW_TITLE);
+ }
+
+ /**
+ * save workflow
+ */
+ public boolean saveWorkflow() throws InterruptedException {
+ System.out.println("start to save workflow ");
+
+ //click save workflow button
+ clickElement(CreateWorkflowLocator.CLICK_SAVE_WORKFLOW_BUTTON);
+
+ //input workflow name
+ sendInput(CreateWorkflowLocator.INPUT_WORKFLOW_NAME,
CreateWorkflowData.INPUT_WORKFLOW_NAME);
+
+ //input workflow description
+ sendInput(CreateWorkflowLocator.INPUT_WORKFLOW_DESCRIPTION,
CreateWorkflowData.INPUT_WORKFLOW_DESCRIPTION);
+
+ //select tenant
+ clickElement(CreateWorkflowLocator.CLICK_TENANT);
+ clickElement(CreateWorkflowLocator.SELECT_TENANT);
+
+ //click workflow timeout alarm
+ clickElement(CreateWorkflowLocator.CLICK_WORKFLOW_TIMEOUT_ALARM);
+ clearInput(CreateWorkflowLocator.INPUT_WORKFLOW_TIMEOUT);
+
+ //input workflow timeout
+ sendInput(CreateWorkflowLocator.INPUT_WORKFLOW_TIMEOUT,
CreateWorkflowData.INPUT_WORKFLOW_TIMEOUT);
+
+ //click workflow global parameters
+ clickElement(CreateWorkflowLocator.CLICK_WORKFLOW_GLOBAL_PARAMETERS);
+
+ //input workflow global parameters
+ sendInput(CreateWorkflowLocator.INPUT_WORKFLOW_GLOBAL_PARAMETERS,
CreateWorkflowData.INPUT_WORKFLOW_GLOBAL_PARAMETERS);
+
+ //input workflow global parameters value
+
sendInput(CreateWorkflowLocator.INPUT_WORKFLOW_GLOBAL_PARAMETERS_VALUES,
CreateWorkflowData.INPUT_WORKFLOW_GLOBAL_PARAMETERS_VALUES);
+
+ //click to add workflow global parameters
+
clickElement(CreateWorkflowLocator.CLICK_ADD_WORKFLOW_GLOBAL_PARAMETERS);
+
+ //input to add workflow global parameters
+ sendInput(CreateWorkflowLocator.INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS,
CreateWorkflowData.INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS);
+
+ //input to add workflow global parameters value
+
sendInput(CreateWorkflowLocator.INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS_VALUES,
CreateWorkflowData.INPUT_ADD_WORKFLOW_GLOBAL_PARAMETERS_VALUES);
+
+ //delete workflow global parameters value
+
clickElement(CreateWorkflowLocator.CLICK_DELETE_WORKFLOW_GLOBAL_PARAMETERS);
+ Thread.sleep(TestConstant.ONE_THOUSANG);
+
+ //click add button
+ clickElement(CreateWorkflowLocator.CLICK_ADD_BUTTON);
+ System.out.println("submit workflow");
+ return ifTitleContains(CreateWorkflowData.WORKFLOW_TITLE);
}
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/page/security/TenantManagePage.java
b/e2e/src/test/java/org/apache/dolphinscheduler/page/security/TenantManagePage.java
index 4c88f65..618e1bc 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/page/security/TenantManagePage.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/page/security/TenantManagePage.java
@@ -34,15 +34,6 @@ public class TenantManagePage extends PageCommon {
super(driver);
}
-
- /**
- * jump page
- */
- public void jumpPage() {
- System.out.println("jump tenant page");
- super.jumpPage(TenantManageData.TENANAT_URL);
- }
-
/**
* createTenant
*
@@ -50,6 +41,7 @@ public class TenantManagePage extends PageCommon {
*/
public boolean createTenant() throws InterruptedException {
Thread.sleep(TestConstant.ONE_THOUSANG);
+ clickButton(TenantManageLocator.TENANT_MANAGE);
//create tenant
clickButton(TenantManageLocator.CREATE_TENANT_BUTTON);
@@ -66,4 +58,20 @@ public class TenantManagePage extends PageCommon {
// Whether to enter the specified page after submit
return ifTitleContains(TenantManageData.TENANAT_MANAGE);
}
+
+ public boolean deleteTenant() throws InterruptedException {
+ Thread.sleep(TestConstant.ONE_THOUSANG);
+ clickButton(TenantManageLocator.TENANT_MANAGE);
+ Thread.sleep(TestConstant.ONE_THOUSANG);
+
+ // click delete button
+ clickButton(TenantManageLocator.DELETE_TENANT_BUTTON);
+ Thread.sleep(TestConstant.ONE_THOUSANG);
+
+ //click confirm delete button
+ clickButton(TenantManageLocator.CONFIRM_DELETE_TENANT_BUTTON);
+
+ // Whether to enter the specified page after submit
+ return ifTitleContains(TenantManageData.TENANAT_MANAGE);
+ }
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/page/security/UserManagePage.java
b/e2e/src/test/java/org/apache/dolphinscheduler/page/security/UserManagePage.java
index 3e2be2d..70311f1 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/page/security/UserManagePage.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/page/security/UserManagePage.java
@@ -26,16 +26,9 @@ public class UserManagePage extends PageCommon {
public UserManagePage(WebDriver driver) {
super(driver);
}
- /**
- * jump page
- */
- public void jumpPage() {
- System.out.println("jump tenant page");
- super.jumpPage(UserManageData.USER_URL);
- }
/**
- * creatTenant
+ * createTenant
*
* @return Whether to enter the specified page after creat tenant
*/
@@ -64,4 +57,20 @@ public class UserManagePage extends PageCommon {
// Whether to enter the specified page after submit
return ifTitleContains(UserManageData.USER_MANAGE);
}
+
+ public boolean deleteUser() throws InterruptedException {
+ Thread.sleep(TestConstant.ONE_THOUSANG);
+ // click user manage
+ clickElement(UserManageLocator.CLICK_USER_MANAGE);
+ Thread.sleep(TestConstant.ONE_THOUSANG);
+
+ // click delete user button
+ clickButton(UserManageLocator.DELETE_USER_BUTTON );
+
+ // click confirm delete button
+ clickButton(UserManageLocator.CONFIRM_DELETE_USER_BUTTON);
+
+ // Whether to enter the specified page after submit
+ return ifTitleContains(UserManageData.USER_MANAGE);
+ }
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/LoginTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/LoginTest.java
index bd3c31d..47ce112 100644
--- a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/LoginTest.java
+++ b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/LoginTest.java
@@ -1,37 +1,26 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
package org.apache.dolphinscheduler.testcase;
-import org.apache.dolphinscheduler.base.BaseTest;
import org.apache.dolphinscheduler.page.LoginPage;
+import org.testng.Assert;
import org.testng.annotations.Test;
+import static org.apache.dolphinscheduler.base.BaseTest.driver;
-public class LoginTest extends BaseTest {
+@Test(groups={"functionTests","login"})
+public class LoginTest {
private LoginPage loginPage;
+
@Test(description = "LoginTest", priority = 1)
public void testLogin() throws InterruptedException {
- // init login page
loginPage = new LoginPage(driver);
+ System.out.println("===================================");
+ System.out.println("jump to Chinese login page");
+ loginPage.jumpPageChinese();
- // enter login page
- loginPage.jumpPage();
+ System.out.println("start login");
+ assert loginPage.login();
+ System.out.println("end login");
+ System.out.println("===================================");
- //assert login page
- assert loginPage.login();
}
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/deleteData/DeleteTenantTest.java
similarity index 68%
copy from
e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
copy to
e2e/src/test/java/org/apache/dolphinscheduler/testcase/deleteData/DeleteTenantTest.java
index 7124b4e..ddbc9d6 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/deleteData/DeleteTenantTest.java
@@ -14,21 +14,24 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.dolphinscheduler.testcase.security;
+package org.apache.dolphinscheduler.testcase.deleteData;
import org.apache.dolphinscheduler.base.BaseTest;
import org.apache.dolphinscheduler.page.security.TenantManagePage;
import org.testng.annotations.Test;
-public class TenantManageTest extends BaseTest {
+public class DeleteTenantTest extends BaseTest {
private TenantManagePage tenantManagePage;
- @Test(description = "TenantTest", priority = 1)
- public void testTenantManage() throws InterruptedException {
+ @Test(groups={"functionTests"},dependsOnGroups = {
"login","createTenant"},description = "DeleteTenantTest")
+ public void testDeleteTenant() throws InterruptedException {
tenantManagePage = new TenantManagePage(driver);
- // enter tenant manage page
- tenantManagePage.jumpPage();
//assert tenant manage page
- assert tenantManagePage.createTenant();
+ System.out.println("start delete tenant");
+ assert tenantManagePage.deleteTenant();
+ System.out.println("end delete tenant");
+ System.out.println("===================================");
}
+
+
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/deleteData/DeleteUserTest.java
similarity index 69%
copy from
e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
copy to
e2e/src/test/java/org/apache/dolphinscheduler/testcase/deleteData/DeleteUserTest.java
index 834ebdb..770fae0 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/deleteData/DeleteUserTest.java
@@ -14,21 +14,23 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.dolphinscheduler.testcase.security;
+package org.apache.dolphinscheduler.testcase.deleteData;
import org.apache.dolphinscheduler.base.BaseTest;
import org.apache.dolphinscheduler.page.security.UserManagePage;
import org.testng.annotations.Test;
-public class UserManageTest extends BaseTest {
+public class DeleteUserTest extends BaseTest {
private UserManagePage userManagePage;
- @Test(description = "TenantTest", priority = 1)
- public void testUserManage() throws InterruptedException {
+ @Test(groups={"functionTests"},dependsOnGroups = { "login","user"
},description = "DeleteUserTest")
+ public void testDeleteUser() throws InterruptedException {
userManagePage = new UserManagePage(driver);
- // enter user manage page
- userManagePage.jumpPage();
//assert user manage page
- assert userManagePage.createUser();
+ System.out.println("start delete user");
+ assert userManagePage.deleteUser();
+ System.out.println("end delete user");
+ System.out.println("===================================");
}
}
+
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateProjectTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateProjectTest.java
index 8abd09d..546792f 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateProjectTest.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateProjectTest.java
@@ -23,13 +23,16 @@ import org.testng.annotations.Test;
public class CreateProjectTest extends BaseTest {
private CreateProjectPage createProjectPage;
- @Test(description = "TenantTest", priority = 1)
- public void testUserManage() throws InterruptedException {
+ @Test(groups={"functionTests"},dependsOnGroups = { "login" },description =
"CreateProjectTest",priority=4)
+ public void testCreateProject() throws InterruptedException {
createProjectPage = new CreateProjectPage(driver);
// enter user manage page
createProjectPage.jumpProjectManagePage();
//assert user manage page
+ System.out.println("start create project");
assert createProjectPage.createProject();
+ System.out.println("end create project");
+ System.out.println("===================================");
}
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateWorkflowTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateWorkflowTest.java
index 6ac13f8..ea87f48 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateWorkflowTest.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/project/CreateWorkflowTest.java
@@ -26,12 +26,16 @@ public class CreateWorkflowTest extends BaseTest {
private CreateProjectPage createProjectPage;
- @Test(description = "CreateWorkflowTest", priority = 1)
- public void CreateWorkflowTest() throws InterruptedException {
+ @Test(groups={"functionTests"},dependsOnGroups = { "login" },description =
"CreateWorkflowTest",priority=5)
+ public void testCreateWorkflow() throws InterruptedException {
createProjectPage = new CreateProjectPage(driver);
createProjectPage.jumpProjectManagePage();
+
createWorkflowPage = new CreateWorkflowPage(driver);
- //assert create workflow
+ System.out.println("start create workflow");
assert createWorkflowPage.createWorkflow();
+ assert createWorkflowPage.saveWorkflow();
+ System.out.println("end create workflow");
+ System.out.println("===================================");
}
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
index 7124b4e..8b21d3b 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/TenantManageTest.java
@@ -20,15 +20,20 @@ import org.apache.dolphinscheduler.base.BaseTest;
import org.apache.dolphinscheduler.page.security.TenantManagePage;
import org.testng.annotations.Test;
+
public class TenantManageTest extends BaseTest {
private TenantManagePage tenantManagePage;
- @Test(description = "TenantTest", priority = 1)
+ @Test(groups={"functionTests","createTenant"},dependsOnGroups = { "login"
},description = "TenantManageTest")
public void testTenantManage() throws InterruptedException {
tenantManagePage = new TenantManagePage(driver);
- // enter tenant manage page
- tenantManagePage.jumpPage();
//assert tenant manage page
+ System.out.println("start create tenant");
assert tenantManagePage.createTenant();
+ System.out.println("end create tenant");
+ System.out.println("===================================");
+
}
+
+
}
diff --git
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
index 834ebdb..9381b68 100644
---
a/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
+++
b/e2e/src/test/java/org/apache/dolphinscheduler/testcase/security/UserManageTest.java
@@ -23,12 +23,14 @@ import org.testng.annotations.Test;
public class UserManageTest extends BaseTest {
private UserManagePage userManagePage;
- @Test(description = "TenantTest", priority = 1)
+ @Test(groups={"functionTests","user"},dependsOnGroups = { "login"
},description = "UserManageTest")
public void testUserManage() throws InterruptedException {
userManagePage = new UserManagePage(driver);
- // enter user manage page
- userManagePage.jumpPage();
//assert user manage page
+ System.out.println("start create user");
assert userManagePage.createUser();
+ System.out.println("end create user");
+ System.out.println("===================================");
+
}
}
diff --git a/e2e/suite.xml b/e2e/suite.xml
deleted file mode 100644
index d9d7ae6..0000000
--- a/e2e/suite.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
-<suite name="e2e Test Suite" parallel="tests" thread-count="2">
- <!-- create tenant -->
- <test name="create-tenant" preserve-order="true">
- <classes>
- <class
name="org.apache.dolphinscheduler.testcase.security.TenantManageTest">
- </class>
- </classes>
- </test>
- <!-- create user -->
- <test name="create-user" preserve-order="true">
- <classes>
- <class
name="org.apache.dolphinscheduler.testcase.security.UserManageTest">
- </class>
- </classes>
- </test>
-</suite>
\ No newline at end of file
diff --git a/e2e/testng.xml b/e2e/testng.xml
index 757ffab..56c9649 100644
--- a/e2e/testng.xml
+++ b/e2e/testng.xml
@@ -1,19 +1,23 @@
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
-<suite name="dolphinscheduler_e2e" parallel="false">
- <test name="dolphinscheduler_test">
- <!--<packages>-->
- <!--<!–<package
name="org.apache.dolphinscheduler.testcase.security.TenantManageTest"/>–>-->
- <!--<package
name="org.apache.dolphinscheduler.testcase.security.*"/>-->
- <!--</packages>-->
+<suite name="dolphinscheduler_e2e" parallel="true">
+ <test name="dolphinscheduler_test" preserve-order="true">
+ <groups>
+ <run>
+ <include name="functionTests" />
+ </run>
+ </groups>
+
<classes>
- <class
name="org.apache.dolphinscheduler.testcase.security.TenantManageTest"></class>
+ <class
name="org.apache.dolphinscheduler.testcase.LoginTest"></class>
+ <class
name="org.apache.dolphinscheduler.testcase.security.TenantManageTest"></class>
+ <class
name="org.apache.dolphinscheduler.testcase.security.UserManageTest"></class>
+ <!--<class
name="org.apache.dolphinscheduler.testcase.project.CreateProjectTest"></class>-->
+ <!--<!–<class
name="org.apache.dolphinscheduler.testcase.project.CreateWorkflowTest"></class>–>-->
+ <class
name="org.apache.dolphinscheduler.testcase.deleteData.DeleteTenantTest"></class>
+ <class
name="org.apache.dolphinscheduler.testcase.deleteData.DeleteUserTest"></class>
</classes>
- </test>
-
- <!--<suite-files>-->
- <!--<suite-file path="suite.xml"/>-->
- <!--</suite-files>-->
+ </test>
<listeners>
<listener class-name="org.uncommons.reportng.HTMLReporter" />