diff options
| author | Mavlushechka <mavlushechka@gmail.com> | 2022-11-16 21:52:16 +0500 | 
|---|---|---|
| committer | Mavlushechka <mavlushechka@gmail.com> | 2022-11-16 21:53:59 +0500 | 
| commit | 7e589d02605f912a8af2d70dc3227cbc24455c62 (patch) | |
| tree | ebc2ba96b57266a09111bf2e29839a2bb12121cb | |
| parent | 716c811657236be9cbf86a6d2fc4a8fc4643f2df (diff) | |
Add getProjectId(String projectName) to the ProjectsPage class
| -rw-r--r-- | src/main/java/com/mavlushechka/a1qa/project/pages/ProjectsPage.java | 4 | ||||
| -rw-r--r-- | src/main/resources/testData.json | 5 | ||||
| -rw-r--r-- | src/test/java/com/mavlushechka/a1qa/project/TestCase1.java | 17 | 
3 files changed, 14 insertions, 12 deletions
diff --git a/src/main/java/com/mavlushechka/a1qa/project/pages/ProjectsPage.java b/src/main/java/com/mavlushechka/a1qa/project/pages/ProjectsPage.java index e632ee1..042445b 100644 --- a/src/main/java/com/mavlushechka/a1qa/project/pages/ProjectsPage.java +++ b/src/main/java/com/mavlushechka/a1qa/project/pages/ProjectsPage.java @@ -51,6 +51,10 @@ public class ProjectsPage extends Form {          AqualityServices.getElementFactory().getButton(By.xpath(projectXpath.formatted(projectName)), "Project").clickAndWait();      } +    public int getProjectId(String projectName) { +        return Integer.parseInt(AqualityServices.getElementFactory().getButton(By.xpath(projectXpath.formatted(projectName)), "Project").getAttribute("id")); +    } +      public void clickOnAddButton() {          addButton.click();      } diff --git a/src/main/resources/testData.json b/src/main/resources/testData.json index c50c13d..c369e10 100644 --- a/src/main/resources/testData.json +++ b/src/main/resources/testData.json @@ -4,8 +4,5 @@      "login": "",      "password": ""    }, -  "project": { -    "name": "Nexage", -    "id": "1" -  } +  "projectName": "Nexage"  }
\ No newline at end of file diff --git a/src/test/java/com/mavlushechka/a1qa/project/TestCase1.java b/src/test/java/com/mavlushechka/a1qa/project/TestCase1.java index d827f04..d99b8e4 100644 --- a/src/test/java/com/mavlushechka/a1qa/project/TestCase1.java +++ b/src/test/java/com/mavlushechka/a1qa/project/TestCase1.java @@ -38,14 +38,15 @@ public class TestCase1 extends BaseTest {          AqualityServices.getBrowser().refresh();          Assert.assertEquals(projectsPage.getVersion(), variant, "The variant is not correct."); +        String projectName = JsonParser.parseData("testData", "projectName");          AqualityServices.getLogger().info("Step 3:", "Go to the Nexage project page. Query the api to get a list of tests in JSON/XML format."); -        projectsPage.openProject(JsonParser.parseData("testData", "project.name")); +        projectsPage.openProject(projectName);          TestsPage testsPage = new TestsPage();          Assert.assertTrue(testsPage.state().waitForDisplayed(), "The %s page is not opened.".formatted(testsPage.getName()));          List<com.mavlushechka.a1qa.project.models.Test> allRunningTestsOnSite = testsPage.getAllRunningTests();          Assert.assertTrue(Collections.isSortedDescending(allRunningTestsOnSite), "Tests are not sorted in descending order.");          Object[] objectsOfAllRunningTestsReceivedByApi = JsonParser.convertArray( -                SiteApiUtils.getTestsJson(Integer.parseInt(JsonParser.parseData("testData", "project.id"))), +                SiteApiUtils.getTestsJson(projectsPage.getProjectId(projectName)),                  com.mavlushechka.a1qa.project.models.Test.class          );          ArrayList<com.mavlushechka.a1qa.project.models.Test> allRunningTestsReceivedByApi = new ArrayList<>(); @@ -66,21 +67,21 @@ public class TestCase1 extends BaseTest {                  Integer.parseInt(JsonParser.parseData("config", "randomTextGenerator.lettersUpperBound")),                  Integer.parseInt(JsonParser.parseData("config", "randomTextGenerator.length"))          ); -        String projectName = randomTextGenerator.get(); -        addProjectPage.saveProject(projectName); -        Assert.assertTrue(addProjectPage.isProjectSaved(projectName), "The project is not saved."); +        String randomProjectName = randomTextGenerator.get(); +        addProjectPage.saveProject(randomProjectName); +        Assert.assertTrue(addProjectPage.isProjectSaved(randomProjectName), "The project is not saved.");          String currentTabHandle = AqualityServices.getBrowser().tabs().getCurrentTabHandle();          AqualityServices.getBrowser().tabs().closeTab();          Assert.assertFalse(AqualityServices.getBrowser().tabs().getTabHandles().contains(currentTabHandle), "The tab is not closed.");          AqualityServices.getBrowser().tabs().switchToLastTab();          AqualityServices.getBrowser().refresh(); -        Assert.assertTrue(projectsPage.getProjects().contains(projectName), "The project is not saved."); +        Assert.assertTrue(projectsPage.getProjects().contains(randomProjectName), "The project is not saved.");          AqualityServices.getLogger().info("Step 5:", "Go to the created project page. Add test via API (along with log and screenshot of current page)."); -        projectsPage.openProject(projectName); +        projectsPage.openProject(randomProjectName);          String testName = randomTextGenerator.get();          int testId = SiteApiUtils.putTest( -                randomTextGenerator.get(), projectName, testName, randomTextGenerator.get(), randomTextGenerator.get() +                randomTextGenerator.get(), randomProjectName, testName, randomTextGenerator.get(), randomTextGenerator.get()          );          Assert.assertTrue(testsPage.getAllRunningTests().stream().anyMatch(test -> Objects.equals(test.name(), testName)), "The test is not added.");          SiteApiUtils.putLogToTest(testId, randomTextGenerator.get());  |