aboutsummaryrefslogtreecommitdiffstats
path: root/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/setup/SetupCDTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'ui-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/setup/SetupCDTest.java')
-rw-r--r--ui-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/setup/SetupCDTest.java538
1 files changed, 0 insertions, 538 deletions
diff --git a/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/setup/SetupCDTest.java b/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/setup/SetupCDTest.java
deleted file mode 100644
index a72168e4c2..0000000000
--- a/ui-ci/src/main/java/org/openecomp/sdc/ci/tests/execute/setup/SetupCDTest.java
+++ /dev/null
@@ -1,538 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * 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
- *
- * 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.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.ci.tests.execute.setup;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-import java.util.Random;
-import java.util.stream.Collectors;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.log4j.Logger;
-import org.openecomp.sdc.be.model.Component;
-import org.openecomp.sdc.be.model.User;
-import org.openecomp.sdc.ci.tests.config.Config;
-import org.openecomp.sdc.ci.tests.datatypes.UserCredentials;
-import org.openecomp.sdc.ci.tests.datatypes.enums.UserRoleEnum;
-import org.openecomp.sdc.ci.tests.datatypes.http.RestResponse;
-import org.openecomp.sdc.ci.tests.run.StartTest;
-import org.openecomp.sdc.ci.tests.utilities.FileHandling;
-import org.openecomp.sdc.ci.tests.utilities.GeneralUIUtils;
-import org.openecomp.sdc.ci.tests.utils.Utils;
-import org.openecomp.sdc.ci.tests.utils.rest.CatalogRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.ProductRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.ResourceRestUtils;
-import org.openecomp.sdc.ci.tests.utils.rest.ResponseParser;
-import org.openecomp.sdc.ci.tests.utils.rest.ServiceRestUtils;
-import org.openqa.selenium.By;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.support.ui.ExpectedConditions;
-import org.openqa.selenium.support.ui.WebDriverWait;
-import org.testng.Assert;
-import org.testng.AssertJUnit;
-import org.testng.ITestResult;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.BeforeSuite;
-
-import com.relevantcodes.extentreports.ExtentReports;
-import com.relevantcodes.extentreports.ExtentTest;
-import com.relevantcodes.extentreports.LogStatus;
-
-public abstract class SetupCDTest {
-
- public SetupCDTest() {
- // LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
- // lc.getLogger("org.apache").setLevel(Level.INFO);
- //// System.setProperty("org.apache.commons.logging.Log",
- // "org.apache.commons.logging.impl.SimpleLog");
- //// System.setProperty("org.apache.commons.logging.simplelog.log.httpclient.wire",
- // "OFF");
- //// System.setProperty("org.apache.commons.logging.simplelog.log.org.apache.commons.httpclient",
- // "OFF");
-
- }
-
- public static Logger logger = Logger.getLogger(SetupCDTest.class.getName());
-
- /**************** CONSTANTS ****************/
- private static final String CREDENTIALS_FILE = "credentials.yaml";
- private static final String REPORT_FILE_NAME = "ASDC_UI_Extent_Report.html";
- public static final String REPORT_FOLDER = "./ExtentReport/";
- public static final String SELENIUM_NODE_URL = "http://%s:%s/wd/hub";
- private static final String SCREENSHOT_FOLDER = REPORT_FOLDER + "screenshots/";
- private static final String SHORT_CSV_REPORT_FILE_NAME = "ShortReport.csv";
- private static final int NUM_OF_ATTEMPTS_TO_REFTRESH = 2;
-
- /**************** USERS ****************/
- protected static User designerUser;
- protected static User adminUser;
- protected static User testerUser;
- protected static User governorUser;
- protected static User opsUser;
- protected static User productManagerUser;
-
- public static Config config;
-
- /**************** PRIVATES ****************/
- private Map<?, ?> credentialsYamlFileMap;
- private static String url;
- private User user;
- private static boolean localEnv = true;
- private int refreshAttempts = 0;
-
- protected abstract UserRoleEnum getRole();
-
- protected ExtentReports extentReport;
- protected static ExtentTest extendTest;
- private static String screenshotFile;
-
- public static String getScreenshotFile() {
- return screenshotFile;
- }
-
- public static void setScreenshotFile(String screenshotFile) {
- SetupCDTest.screenshotFile = screenshotFile;
- }
-
- public static ExtentTest getExtendTest() {
- return extendTest;
- }
-
- private OnboardCSVReport csvReport;
-
- public OnboardCSVReport getCsvReport() {
- return csvReport;
- }
-
- /**************** BEFORE ****************/
-
- @BeforeSuite(alwaysRun = true)
- public void setEnvParameters() throws Exception {
-
- File dir = new File(REPORT_FOLDER);
- try {
- FileUtils.deleteDirectory(dir);
- } catch (IOException e) {
- }
- extentReport = new ExtentReports(REPORT_FOLDER + REPORT_FILE_NAME);
- csvReport = new OnboardCSVReport(REPORT_FOLDER, SHORT_CSV_REPORT_FILE_NAME);
-
- System.out.println("Setup....");
- config = Utils.getConfig();
- setUrl();
- }
-
- @BeforeMethod(alwaysRun = true)
- public void setBrowserBeforeTest(java.lang.reflect.Method method) throws Exception {
- extendTest = extentReport.startTest(method.getName());
- extendTest.log(LogStatus.INFO, "Test started");
- setBrowserBeforeTest(getRole());
- }
-
- /**************** AFTER ****************/
- @AfterMethod(alwaysRun = true)
- public void quitAfterTest(ITestResult result) throws Exception {
-
- StringBuilder sb = new StringBuilder();
- if (result.getParameters().length != 0) {
- for (int i = 0; i < result.getParameters().length - 1; i++) {
- sb.append(result.getParameters()[i].toString() + ",");
- }
- sb.append(result.getParameters()[result.getParameters().length - 1].toString());
- }
-
- File imageFilePath = GeneralUIUtils.takeScreenshot(screenshotFile, SCREENSHOT_FOLDER, result.getName());
- final String absolutePath = new File(REPORT_FOLDER).toURI().relativize(imageFilePath.toURI()).getPath();
- if (result.getStatus() == ITestResult.SUCCESS) {
- extendTest.log(LogStatus.PASS, "Test Result : <span class='label success'>Success</span>");
- extendTest.log(LogStatus.PASS,
- "Finished the test with the following screenshot : " + extendTest.addScreenCapture(absolutePath));
- csvReport.writeRow(result.getName(), sb.toString(), "PASS");
- } else if (result.getStatus() == ITestResult.FAILURE || result.getStatus() == ITestResult.SKIP) {
- extendTest.log(LogStatus.ERROR, "ERROR - The following exepction occured");
- extendTest.log(LogStatus.ERROR, result.getThrowable());
- extendTest.log(LogStatus.ERROR,
- "Failure is described in the following screenshot : " + extendTest.addScreenCapture(absolutePath));
- extendTest.log(LogStatus.FAIL, "<span class='label failure'>Failure</span>");
- csvReport.writeRow(result.getName(), sb.toString(), "FAIL");
- }
-
- extentReport.endTest(extendTest);
- extentReport.flush();
-
- quitBrowser();
-// deleteCreatedComponents2(getCatalogAsMap());
- }
-
- @AfterClass(alwaysRun = true)
- public void afterSuite() {
- csvReport.closeFile();
- }
-
- /*************************************/
-
- private Map<String, ArrayList<Component>> getCatalogAsMap() throws IOException {
- RestResponse catalog = CatalogRestUtils.getCatalog(getUser().getUserId());
- Map<String, ArrayList<Component>> convertCatalogResponseToJavaObject = ResponseParser
- .convertCatalogResponseToJavaObject(catalog.getResponse());
- return convertCatalogResponseToJavaObject;
- }
-
- private void deleteCreatedComponents2(Map<String, ArrayList<Component>> convertCatalogResponseToJavaObject)
- throws IOException {
- final String userId = getUser().getUserId();
- ArrayList<Component> resourcesArrayList = convertCatalogResponseToJavaObject.get("resources");
-
- List<String> collect = resourcesArrayList.stream().filter(s -> s.getName().startsWith("ci"))
- .map(e -> e.getUniqueId()).collect(Collectors.toList());
- for (String uId : collect) {
- ResourceRestUtils.deleteResource(uId, userId);
- }
-
- resourcesArrayList = convertCatalogResponseToJavaObject.get("services");
- collect = resourcesArrayList.stream().filter(s -> s.getName().startsWith("ci")).map(e -> e.getUniqueId())
- .collect(Collectors.toList());
- for (String uId : collect) {
- ServiceRestUtils.deleteServiceById(uId, userId);
- }
-
- resourcesArrayList = convertCatalogResponseToJavaObject.get("products");
- collect = resourcesArrayList.stream().filter(s -> s.getName().startsWith("ci")).map(e -> e.getUniqueId())
- .collect(Collectors.toList());
- for (String uId : collect) {
- ProductRestUtils.deleteProduct(uId, userId);
- }
-
- }
-
- /**************** MAIN ****************/
- public static void main(String[] args) {
- System.out.println("---------------------");
- System.out.println("running test from CLI");
- System.out.println("---------------------");
-
- String attsdcFilePath = FileHandling.getBasePath() + File.separator + "conf" + File.separator + "sdc.yaml";
- System.setProperty("config.resource", attsdcFilePath);
- System.out.println("sdc.yaml file path is : " + attsdcFilePath);
-
- Object[] testSuitsList = FileHandling
- .getFileNamesFromFolder(FileHandling.getBasePath() + File.separator + "testSuites", ".xml");
- if (testSuitsList != null) {
- System.out.println(String.format("Found %s testSuite(s)", testSuitsList.length));
- args = Arrays.copyOf(testSuitsList, testSuitsList.length, String[].class);
- StartTest.main(args);
- }
- }
-
- /***********************************************************************************/
-
- protected static String setUrl() {
- url = config.getUrl();
- if (url == null) {
- String message = "no URL found";
- System.out.println(message);
- Assert.fail(message);
- } else if (!url.contains("localhost") && !url.contains("127.0.0.1")) {
- localEnv = false;
- }
- return url;
- }
-
- private Map<String, String> loadCredentialsFile() throws Exception {
- File credentialsFile = new File(
- FileHandling.getBasePath() + File.separator + "conf" + File.separator + CREDENTIALS_FILE);
- if (!credentialsFile.exists()) {
- credentialsFile = new File(FileHandling.getConfFilesPath() + CREDENTIALS_FILE);
- }
- credentialsYamlFileMap = (Map<String, String>) FileHandling.parseYamlFile(credentialsFile.getAbsolutePath());
- return (Map<String, String>) credentialsYamlFileMap;
- }
-
- protected UserCredentials getUserCredentialsFromFile(String userRole) throws Exception {
- Map<String, String> credentialsMap = (Map<String, String>) credentialsYamlFileMap.get(userRole);
- String user = (String) credentialsMap.get("username");
- String password = (String) credentialsMap.get("password");
- String firstname = (String) credentialsMap.get("firstname");
- String lastname = (String) credentialsMap.get("lastname");
-
- return new UserCredentials(user, password, firstname, lastname);
- }
-
- public UserCredentials updateUserUserId(String role) throws Exception {
- System.out.println("updating...");
- UserCredentials designerCredentialsFromFile = null;
- UserCredentials testerCredentialsFromFile = null;
- UserCredentials adminCredentialsFromFile = null;
- UserCredentials opsCredentialsFromFile = null;
- UserCredentials governorCredentialsFromFile = null;
- UserCredentials productCredentialsFromFile = null;
- UserCredentials productManagerCredentialsFromFile = null;
-
- String lowerCaseRole = role.toLowerCase();
- try {
- if (lowerCaseRole.equals("designer")) {
- designerCredentialsFromFile = getUserCredentialsFromFile("designer");
- designerUser.setUserId(designerCredentialsFromFile.getUserId());
- designerUser.setFirstName(designerCredentialsFromFile.getFirstName());
- designerUser.setLastName(designerCredentialsFromFile.getLastName());
- return designerCredentialsFromFile;
- } else if (lowerCaseRole.equals("tester")) {
- testerCredentialsFromFile = getUserCredentialsFromFile("tester");
- testerUser.setUserId(testerCredentialsFromFile.getUserId());
- testerUser.setFirstName(testerCredentialsFromFile.getFirstName());
- testerUser.setLastName(testerCredentialsFromFile.getLastName());
- return testerCredentialsFromFile;
- } else if (lowerCaseRole.equals("admin")) {
- adminCredentialsFromFile = getUserCredentialsFromFile("admin");
- adminUser.setUserId(adminCredentialsFromFile.getUserId());
- adminUser.setFirstName(adminCredentialsFromFile.getFirstName());
- adminUser.setLastName(adminCredentialsFromFile.getLastName());
- return adminCredentialsFromFile;
- } else if (lowerCaseRole.equals("ops")) {
- opsCredentialsFromFile = getUserCredentialsFromFile("ops");
- opsUser.setUserId(opsCredentialsFromFile.getUserId());
- opsUser.setFirstName(opsCredentialsFromFile.getFirstName());
- opsUser.setLastName(opsCredentialsFromFile.getLastName());
- return opsCredentialsFromFile;
- } else if (lowerCaseRole == "governor") {
- governorCredentialsFromFile = getUserCredentialsFromFile("governor");
- governorUser.setUserId(governorCredentialsFromFile.getUserId());
- governorUser.setFirstName(governorCredentialsFromFile.getFirstName());
- governorUser.setLastName(governorCredentialsFromFile.getLastName());
- return governorCredentialsFromFile;
- } else if (lowerCaseRole == "product_local") {
- productCredentialsFromFile = getUserCredentialsFromFile("product_local");
- productManagerUser.setUserId(productCredentialsFromFile.getUserId());
- productManagerUser.setFirstName(productCredentialsFromFile.getFirstName());
- productManagerUser.setLastName(productCredentialsFromFile.getLastName());
- return productCredentialsFromFile;
- } else if (lowerCaseRole == "product_manager") {
- productManagerCredentialsFromFile = getUserCredentialsFromFile("product_manager");
- productManagerUser.setUserId(productManagerCredentialsFromFile.getUserId());
- productManagerUser.setFirstName(productManagerCredentialsFromFile.getFirstName());
- productManagerUser.setLastName(productManagerCredentialsFromFile.getLastName());
- return productManagerCredentialsFromFile;
- }
- }
-
- catch (Exception e) {
- System.out.print("An exception occured...");
- System.out.println("->exception message is : " + e.getMessage());
- }
-
- return null;
- }
-
- public static void navigateToUrl(String url) throws Exception {
-
- try {
- WebDriver driver = GeneralUIUtils.getDriver();
- System.out.println("navigating to URL :" + url);
- driver.manage().window().maximize();
- driver.manage().deleteAllCookies();
- driver.navigate().to(url);
- GeneralUIUtils.windowZoomOut();
- GeneralUIUtils.waitForLoader();
- } catch (Exception e) {
- System.out.println("browser is unreachable");
- extendTest.log(LogStatus.ERROR, "browser is unreachable");
- Assert.fail("browser is unreachable");
- }
- }
-
- protected void loginToSystem(UserCredentials credentials, UserRoleEnum role) throws Exception {
-
- sendUserAndPasswordKeys(credentials);
- refreshAttempts = (refreshAttempts == 0) ? NUM_OF_ATTEMPTS_TO_REFTRESH : refreshAttempts;
- if (!getRole().equals(UserRoleEnum.ADMIN)) {
- try {
- if(!localEnv){
-// GeneralUIUtils.ultimateWait();
- WebDriverWait wait = new WebDriverWait(GeneralUIUtils.getDriver(), 3 * 60);
- WebElement sdcApp = wait.until(ExpectedConditions.elementToBeClickable(By.id("app-image-SDC")));
- sdcApp.click();
- GeneralUIUtils.getDriver().switchTo().frame(1);
- GeneralUIUtils.waitFordataTestIdVisibility("main-menu-input-search");
- }
- else{
- enterToUserWorkspace();
- }
-
- } catch (Exception e) {
- refreshAttempts--;
- if (refreshAttempts <= 0) {
- System.out.println("ERR : Something is wrong with browser!");
- Assert.fail("ERR : Something is wrong with browser!");
- }
- System.out.println("trying again...");
- System.out.println(String.format("%s attempt(s) left", refreshAttempts));
- extendTest.log(LogStatus.INFO, "trying again...");
- extendTest.log(LogStatus.INFO, String.format("%s attempt(s) left", refreshAttempts));
-
- quitAndReLogin(role);
- }
- }
- }
-
- private void sendUserAndPasswordKeys(UserCredentials userId) {
-
- if (localEnv){
- System.out.println("Login with user : " + userId.getUserId());
- WebElement userNameTextbox = GeneralUIUtils.waitForElementVisibility(By.name("userid"));
- userNameTextbox.sendKeys(userId.getUserId());
- WebElement passwordTextbox = GeneralUIUtils.waitForElementVisibility(By.name("password"));
- passwordTextbox.sendKeys(userId.getPassword());
-
- WebElement submitButton = GeneralUIUtils.waitForElementVisibility(By.name("btnSubmit"));
- submitButton.click();
- WebElement buttonOK = GeneralUIUtils.waitForElementVisibility(By.name("successOK"));
- AssertJUnit.assertTrue(buttonOK.isDisplayed());
- buttonOK.click();
- }
- else
- {
- System.out.println("Login with user : " + userId.getUserId());
- WebElement userNameTextbox = GeneralUIUtils.getDriver().findElement(By.cssSelector("input[type='text']"));
- userNameTextbox.sendKeys(userId.getUserId());
- WebElement passwordTextbox = GeneralUIUtils.getDriver().findElement(By.cssSelector("input[type='password']"));
- passwordTextbox.sendKeys(userId.getPassword());
-
- GeneralUIUtils.getDriver().findElement(By.id("loginBtn")).click();
- }
-
-
- }
-
- public static String getUrl() {
- return url;
- }
-
- public static void setUrl(String url) {
- SetupCDTest.url = url;
- }
-
- public static Config getConfig() {
- return config;
- }
-
- public void loginToSystem(UserRoleEnum role){
- WebDriver driver = GeneralUIUtils.getDriver();
- WebDriverWait wait = new WebDriverWait(driver, 30);
-
- wait.until(ExpectedConditions.visibilityOf(driver.findElement(By.xpath("//*[@method='" + "post" + "']"))));
-
- WebElement userIdTextbox = GeneralUIUtils.waitForElementVisibility(By.name("userId"));
- userIdTextbox.sendKeys(role.getUserId());
- WebElement passwordTextbox = GeneralUIUtils.waitForElementVisibility(By.name("password"));
- passwordTextbox.sendKeys("123123a");
-
- wait.until(ExpectedConditions.elementToBeClickable(driver.findElement(By.xpath("//*[@value='" + "Submit" + "']")))).click();
-
- GeneralUIUtils.waitForLoader();
- }
-
- public void loginWithUser(UserRoleEnum role) {
- setUser(role);
- try {
- navigateToUrl(url);
- extendTest.log(LogStatus.INFO, String.format("login with user %s", role.name().toUpperCase()));
- if (localEnv) {
- loginToSystem(role);
- enterToUserWorkspace();
- }
- else{
- loadCredentialsFile();
- UserCredentials credentials = getUserCredentialsFromFile(role.name().toLowerCase());
- loginToSystem(credentials, role);
- user = credentials;
- }
-
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
-
- private void enterToUserWorkspace() {
- WebElement enterToUserWorkspaceButton = GeneralUIUtils.waitForElementVisibility(By.className("asdc-welcome-main-back-btn"), 3 * 60);
- enterToUserWorkspaceButton.click();
- System.out.println("Entering to system...");
- GeneralUIUtils.waitForLoader();
- }
-
- private void setUser(UserRoleEnum role) {
- user = new User();
- user.setUserId(role.getUserId());
- user.setFirstName(role.getFirstName());
- user.setRole(role.name());
- user.setLastName(role.getLastName());
- }
-
- public User getUser() {
- return user;
- }
-
- protected void setBrowserBeforeTest(UserRoleEnum role) {
- refreshAttempts = 0;
- System.out.println(String.format("Setup before test as %s", role.toString().toUpperCase()));
- GeneralUIUtils.initDriver();
- loginWithUser(role);
- }
-
- public User getUser(UserRoleEnum role) {
- User user = new User();
- user = new User();
- user.setUserId(role.getUserId());
- user.setFirstName(role.getFirstName());
- user.setRole(role.name());
- return user;
- }
-
- protected void quitAndReLogin(UserRoleEnum role) throws Exception {
- quitBrowser();
- if (localEnv) {
- loginToSystem(role);
- }
- setBrowserBeforeTest(role);
- }
-
- private void quitBrowser() {
- System.out.println("Closing browser...");
- GeneralUIUtils.getDriver().quit();
- }
-
-
- protected String getRandomComponentName(String prefix) {
- return prefix + randomNumber();
- }
-
- protected int randomNumber() {
- Random r = new Random();
- return r.nextInt(10000);
- }
-
-}