From 497721377118ddfd7e0f728b30700c5e04408ed2 Mon Sep 17 00:00:00 2001 From: vsousa Date: Mon, 17 Mar 2025 20:41:15 +0000 Subject: [PATCH 1/9] QEXDEV-362 - Added Test Successful Login --- .../configuration/PropertiesProvider.java | 2 +- .../devexperts/in/qatesting/LoginTest.java | 33 +++++++++++++++++++ .../test/java/org/example/ExampleTest.java | 12 ------- 3 files changed, 34 insertions(+), 13 deletions(-) rename playwright-workshop/src/main/java/{org/example => com/devexperts/in/qatesting}/configuration/PropertiesProvider.java (96%) create mode 100644 playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java delete mode 100644 playwright-workshop/src/test/java/org/example/ExampleTest.java diff --git a/playwright-workshop/src/main/java/org/example/configuration/PropertiesProvider.java b/playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java similarity index 96% rename from playwright-workshop/src/main/java/org/example/configuration/PropertiesProvider.java rename to playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java index 846df5b..6d772c8 100644 --- a/playwright-workshop/src/main/java/org/example/configuration/PropertiesProvider.java +++ b/playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java @@ -1,4 +1,4 @@ -package org.example.configuration; +package com.devexperts.in.qatesting.configuration; import java.io.FileInputStream; import java.io.FileNotFoundException; diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java new file mode 100644 index 0000000..4999667 --- /dev/null +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -0,0 +1,33 @@ +package com.devexperts.in.qatesting; + +import com.microsoft.playwright.*; +import com.microsoft.playwright.options.AriaRole; +import org.junit.jupiter.api.Test; + +import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat; +import static java.awt.SystemColor.text; +import static org.junit.jupiter.api.Assertions.*; + +public class LoginTest { + @Test + public void testSuccessfulLogin(){ + Playwright playwright = Playwright.create(); + Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false)); + Page page = browser.newPage(); + page.navigate("https://qa-testing.in.devexperts.com/internship/"); + Locator inputUsername = page.getByPlaceholder("Username" ); + inputUsername.fill("vsousa@devexperts.com"); + Locator inputPassword = page.locator( "#password" ); + inputPassword.fill("198881^^ZXcvb"); + Locator loginButton = page.getByRole(AriaRole.BUTTON , new Page.GetByRoleOptions().setName("Login")); + loginButton.click(); + Locator homeHeaderPage = page.locator(".header-title-content"); + assertAll("Login Page Checks" , + () -> assertThat(homeHeaderPage).hasText("Home Test Task"), + () -> assertThat(homeHeaderPage).isVisible()); + + page.close(); + browser.close(); + playwright.close(); + } +} diff --git a/playwright-workshop/src/test/java/org/example/ExampleTest.java b/playwright-workshop/src/test/java/org/example/ExampleTest.java deleted file mode 100644 index 9cdb3dc..0000000 --- a/playwright-workshop/src/test/java/org/example/ExampleTest.java +++ /dev/null @@ -1,12 +0,0 @@ -package org.example; - -import org.junit.jupiter.api.Test; - -public class ExampleTest { - // - // - @Test - public void example(){ - - } -} From d1880c500ac24c258d594e5c10c022087d4cd73a Mon Sep 17 00:00:00 2001 From: vsousa Date: Mon, 17 Mar 2025 21:16:02 +0000 Subject: [PATCH 2/9] QEXDEV-362 - Removed headless configuration --- .../src/test/java/com/devexperts/in/qatesting/LoginTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index 4999667..0d1b238 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -12,7 +12,7 @@ public class LoginTest { @Test public void testSuccessfulLogin(){ Playwright playwright = Playwright.create(); - Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false)); + Browser browser = playwright.chromium().launch()); Page page = browser.newPage(); page.navigate("https://qa-testing.in.devexperts.com/internship/"); Locator inputUsername = page.getByPlaceholder("Username" ); From 42f049d11abec4fd639f3dfcb99430fdc82e5dda Mon Sep 17 00:00:00 2001 From: vsousa Date: Mon, 17 Mar 2025 21:38:07 +0000 Subject: [PATCH 3/9] QEXDEV-362 - Removed headless configuration2 --- .../src/test/java/com/devexperts/in/qatesting/LoginTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index 0d1b238..292db65 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -12,7 +12,7 @@ public class LoginTest { @Test public void testSuccessfulLogin(){ Playwright playwright = Playwright.create(); - Browser browser = playwright.chromium().launch()); + Browser browser = playwright.chromium().launch(); Page page = browser.newPage(); page.navigate("https://qa-testing.in.devexperts.com/internship/"); Locator inputUsername = page.getByPlaceholder("Username" ); From ea6657f6f5393290889eec6fe3718daecfbd679f Mon Sep 17 00:00:00 2001 From: vsousa Date: Thu, 3 Apr 2025 20:54:24 +0100 Subject: [PATCH 4/9] QEXDEV-362 - Removed headless configuration --- .../src/test/java/com/devexperts/in/qatesting/LoginTest.java | 1 + 1 file changed, 1 insertion(+) diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index 292db65..2681cd3 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -31,3 +31,4 @@ public void testSuccessfulLogin(){ playwright.close(); } } + From 69381c0b809a4d6ff9cb9c9a8f3de3faa6db1bc3 Mon Sep 17 00:00:00 2001 From: vsousa Date: Mon, 14 Apr 2025 12:24:58 +0100 Subject: [PATCH 5/9] QEXDEV-362 - Added Login with Wrong Credentials test and Account Creation with Balance validation after Login test --- .../in/qatesting/AccountCreationTest.java | 98 ++++++++++++++++ .../devexperts/in/qatesting/LoginPage.java | 42 +++++++ .../devexperts/in/qatesting/LoginTest.java | 68 ++++++++--- .../in/qatesting/RegistrationPage.java | 106 ++++++++++++++++++ 4 files changed, 301 insertions(+), 13 deletions(-) create mode 100644 playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java create mode 100644 playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java create mode 100644 playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java new file mode 100644 index 0000000..619e47b --- /dev/null +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java @@ -0,0 +1,98 @@ +package com.devexperts.in.qatesting; + +import com.devexperts.in.qatesting.configuration.PropertiesProvider; +import com.microsoft.playwright.*; +import com.microsoft.playwright.options.WaitForSelectorState; +import org.junit.jupiter.api.*; + +import java.util.Random; +import java.util.UUID; + +import static org.junit.jupiter.api.Assertions.*; + +public class AccountCreationTest { + private static Playwright playwright; + private Browser browser; + private Page page; + + private static final String CREATE_PASSWORD = "245871^^ABcvb"; + private static final String REAL_NAME = "Ana"; + + private String generatedEmail; + private String generatedPhone; + + private String generateRandomEmail() { + String uuid = UUID.randomUUID().toString().replaceAll("-", "").substring(0, 8); + return "testuser_" + uuid + "@example.com"; + } + + private String generatePortuguesePhone() { + Random random = new Random(); + int prefix = 91 + random.nextInt(2); // 91 ou 92 + int number = 1000000 + random.nextInt(9000000); + return "+351" + prefix + number; + } + + + @BeforeAll + public static void beforeAll(){ + playwright = Playwright.create(); + } + + @BeforeEach + public void setUp(){ + browser = playwright.chromium().launch(); + page = browser.newPage(); + page.navigate(PropertiesProvider.getProperty("base.url")); + generatedEmail = generateRandomEmail(); + generatedPhone = generatePortuguesePhone(); + } + + + @Test + public void testAccountCreationAndBalanceVerification(){ + RegistrationPage registrationPage = new RegistrationPage(page); + registrationPage.clickOpenForm(); + registrationPage.fillEmail(generatedEmail); + registrationPage.waitForPasswordFieldToBeVisible(); + registrationPage.fillPassword(CREATE_PASSWORD); + registrationPage.fillRealName(REAL_NAME); + registrationPage.fillPhone(generatedPhone); + registrationPage.selectRandomBalance(); + + String selectedBalance = registrationPage.getSelectedBalance(); + + registrationPage.clickRegister(); + + LoginPage loginPage = new LoginPage(page); + loginPage.informUsername(generatedEmail); + loginPage.informPassword(CREATE_PASSWORD); + loginPage.clickLogin(); + + page.waitForLoadState(); + + Locator homeBalance = page.locator("#balanceInfoNumber"); + homeBalance.waitFor(new Locator.WaitForOptions() + .setTimeout(60000) + .setState(WaitForSelectorState.VISIBLE)); + + String displayedBalance = homeBalance.textContent().trim().replace(".", ""); + + assertAll("Check Balance", + () -> assertNotNull(displayedBalance), + () -> assertEquals(displayedBalance, selectedBalance)); + } + + + @AfterEach + public void tearDown(){ + page.close(); + browser.close(); + } + + @AfterAll + public static void afterAll(){ + playwright.close(); + } + +} diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java new file mode 100644 index 0000000..4104c72 --- /dev/null +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java @@ -0,0 +1,42 @@ +package com.devexperts.in.qatesting; + +import com.microsoft.playwright.Locator; +import com.microsoft.playwright.Page; +import com.microsoft.playwright.options.AriaRole; + +public class LoginPage { + Page page; + private static final String USERNAME_SELECTOR = "Username"; + private static final String PASSWORD_SELECTOR = "#password"; + private static final String LOGIN_SELECTOR = "Login"; + public LoginPage(Page page){ + this.page = page; + } + + private Locator getInputUsername(){ + return page.getByPlaceholder(USERNAME_SELECTOR); + } + + private Locator getInputPassword(){ + return page.locator(PASSWORD_SELECTOR); + } + + private Locator getButtonLogin(){ + return page.getByRole(AriaRole.BUTTON , new Page.GetByRoleOptions().setName(LOGIN_SELECTOR)); + } + + + public void informUsername(String username){ + getInputUsername().fill(username); + } + + public void informPassword(String password){ + getInputPassword().fill(password); + } + + public void clickLogin(){ + getButtonLogin().click(); + } + + +} diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index 2681cd3..5d81c07 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -1,34 +1,76 @@ package com.devexperts.in.qatesting; +import com.devexperts.in.qatesting.configuration.PropertiesProvider; import com.microsoft.playwright.*; import com.microsoft.playwright.options.AriaRole; -import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.*; import static com.microsoft.playwright.assertions.PlaywrightAssertions.assertThat; import static java.awt.SystemColor.text; import static org.junit.jupiter.api.Assertions.*; public class LoginTest { + private static Playwright playwright; + private Browser browser; + private Page page; + private static final String USERNAME_DATA = "vsousa@devexperts.com"; + private static final String PASSWORD_DATA = "198881^^ZXcvb"; + private static final String INCORRECT_USERNAME_DATA = "vsou@devexperts.com"; + private static final String INCORRECT_PASSWORD_DATA = "123456^^ASdfg"; + + + @BeforeAll + public static void beforeAll(){ + playwright = Playwright.create(); + } + + @BeforeEach + public void setUp(){ + browser = playwright.chromium().launch(); + page = browser.newPage(); + page.navigate(PropertiesProvider.getProperty("base.url")); + } + @Test public void testSuccessfulLogin(){ - Playwright playwright = Playwright.create(); - Browser browser = playwright.chromium().launch(); - Page page = browser.newPage(); - page.navigate("https://qa-testing.in.devexperts.com/internship/"); - Locator inputUsername = page.getByPlaceholder("Username" ); - inputUsername.fill("vsousa@devexperts.com"); - Locator inputPassword = page.locator( "#password" ); - inputPassword.fill("198881^^ZXcvb"); - Locator loginButton = page.getByRole(AriaRole.BUTTON , new Page.GetByRoleOptions().setName("Login")); - loginButton.click(); + + LoginPage loginPage = new LoginPage(page); + loginPage.informUsername(USERNAME_DATA); + loginPage.informPassword(PASSWORD_DATA); + loginPage.clickLogin(); + Locator homeHeaderPage = page.locator(".header-title-content"); assertAll("Login Page Checks" , () -> assertThat(homeHeaderPage).hasText("Home Test Task"), () -> assertThat(homeHeaderPage).isVisible()); + } + + @Test + public void testLoginWithWrongCredentials() { + + LoginPage loginPage = new LoginPage(page); + loginPage.informUsername(INCORRECT_USERNAME_DATA); + loginPage.informPassword(INCORRECT_PASSWORD_DATA); + loginPage.clickLogin(); + + Locator errorMessage = page.locator("#login-status"); + assertAll("Login Failure Checks", + () -> assertTrue(errorMessage.isVisible()), + () -> assertThat(errorMessage).hasText("Wrong user! User " + INCORRECT_USERNAME_DATA + " not found.")); + + } + + + + @AfterEach + public void tearDown(){ page.close(); browser.close(); - playwright.close(); } -} + @AfterAll + public static void afterAll(){ + playwright.close(); + } +} \ No newline at end of file diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java new file mode 100644 index 0000000..2acfb17 --- /dev/null +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java @@ -0,0 +1,106 @@ +package com.devexperts.in.qatesting; + +import com.microsoft.playwright.Locator; +import com.microsoft.playwright.Page; +import com.microsoft.playwright.options.AriaRole; +import com.microsoft.playwright.options.SelectOption; +import com.microsoft.playwright.options.WaitForSelectorState; + +import java.util.Random; +import java.util.Map; +import java.util.HashMap; + +public class RegistrationPage { + Page page; + private String selectedBalance; + private static final String EMAIL_SELECTOR = "#desiredName"; + private static final String CREATE_PASSWORD_SELECTOR = "#desiredPassword"; + private static final String REAL_NAME_SELECTOR = "#desiredRealname"; + private static final String PHONE_SELECTOR = "#desiredPhone"; + private static final String BALANCE_SELECTOR = "#desiredDeposit"; + private static final String OPEN_FORM_BUTTON = ".registrationToggle"; + private static final String REGISTER_BUTTON = "#registration-button"; + + public RegistrationPage(Page page){ + this.page = page; + } + + private Locator getOpenFormButton() { + return page.locator(OPEN_FORM_BUTTON, new Page.LocatorOptions().setHasText("Need an account?")); + } + + private Locator getInputEmail(){ + return page.locator(EMAIL_SELECTOR); + } + + private Locator getInputPassword(){ + return page.locator(CREATE_PASSWORD_SELECTOR); + } + + private Locator getInputRealName(){ + return page.locator(REAL_NAME_SELECTOR); + } + + private Locator getInputPhone(){ + return page.locator(PHONE_SELECTOR); + } + + private Locator getBalanceDropdown() { + return page.locator(BALANCE_SELECTOR); + } + + private Locator getButtonRegister(){ + return page.locator(REGISTER_BUTTON); + } + + public void clickOpenForm() { + getOpenFormButton().click(); + } + + + public void fillEmail(String email) { + getInputEmail().fill(email); + } + + public void fillPassword(String password) { + getInputPassword().fill(password); + } + + public void fillRealName(String realName) { + getInputRealName().fill(realName); + } + + public void fillPhone(String phone) { + getInputPhone().fill(phone); + } + + public void selectRandomBalance() { + Map labelToValue = new HashMap<>(); + labelToValue.put("1.000 BCC", "100000"); + labelToValue.put("5.000 BCC", "500000"); + labelToValue.put("10.000 BCC", "1000000"); + + String[] balances = {"1.000 BCC", "5.000 BCC", "10.000 BCC"}; + String selectedLabel = balances[new Random().nextInt(balances.length)]; + + this.selectedBalance = labelToValue.get(selectedLabel); + + Locator dropdown = getBalanceDropdown(); + dropdown.selectOption(new SelectOption().setLabel(selectedLabel)); + } + + public String getSelectedBalance() { + return selectedBalance; + } + + public void clickRegister() { + getButtonRegister().click(); + } + + public void waitForPasswordFieldToBeVisible() { + page.waitForSelector(CREATE_PASSWORD_SELECTOR, new Page.WaitForSelectorOptions() + .setState(com.microsoft.playwright.options.WaitForSelectorState.VISIBLE) + .setTimeout(60000)); + } + +} \ No newline at end of file From ebfb706ad736c92e5d58e2be07ef4ac3267edf43 Mon Sep 17 00:00:00 2001 From: vsousa Date: Mon, 14 Apr 2025 12:55:52 +0100 Subject: [PATCH 6/9] QEXDEV-362 - Added Login with Wrong Credentials test + Account Creation with Balance validation after Login test --- .../java/com/devexperts/in/qatesting/AccountCreationTest.java | 4 ++++ .../src/test/java/com/devexperts/in/qatesting/LoginPage.java | 1 - .../src/test/java/com/devexperts/in/qatesting/LoginTest.java | 1 - 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java index 619e47b..fe2c4d4 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java @@ -4,6 +4,7 @@ import com.microsoft.playwright.*; import com.microsoft.playwright.options.WaitForSelectorState; import org.junit.jupiter.api.*; +import com.microsoft.playwright.Page; import java.util.Random; import java.util.UUID; @@ -78,6 +79,9 @@ public void testAccountCreationAndBalanceVerification(){ String displayedBalance = homeBalance.textContent().trim().replace(".", ""); + System.out.println(" Selected balance (from registration): " + selectedBalance); + System.out.println(" Displayed balance (after login): " + displayedBalance); + assertAll("Check Balance", () -> assertNotNull(displayedBalance), () -> assertEquals(displayedBalance, selectedBalance)); diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java index 4104c72..06e0f43 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java @@ -38,5 +38,4 @@ public void clickLogin(){ getButtonLogin().click(); } - } diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index 5d81c07..ef9587d 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -62,7 +62,6 @@ public void testLoginWithWrongCredentials() { } - @AfterEach public void tearDown(){ page.close(); From 0f87c97f7d933252b41833e5616602f94472ad93 Mon Sep 17 00:00:00 2001 From: vsousa Date: Mon, 14 Apr 2025 12:56:36 +0100 Subject: [PATCH 7/9] QEXDEV-362 - Added Login with Wrong Credentials test + Account Creation with Balance validation after Login test --- .../java/com/devexperts/in/qatesting/AccountCreationTest.java | 1 + .../src/test/java/com/devexperts/in/qatesting/LoginPage.java | 1 + .../test/java/com/devexperts/in/qatesting/RegistrationPage.java | 1 + 3 files changed, 3 insertions(+) diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java index fe2c4d4..01bef4c 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java @@ -99,4 +99,5 @@ public static void afterAll(){ playwright.close(); } + } diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java index 06e0f43..4104c72 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java @@ -38,4 +38,5 @@ public void clickLogin(){ getButtonLogin().click(); } + } diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java index 2acfb17..9513b09 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java @@ -103,4 +103,5 @@ public void waitForPasswordFieldToBeVisible() { .setTimeout(60000)); } + } \ No newline at end of file From 715430de3df8b2bfab4be288434833da7485070d Mon Sep 17 00:00:00 2001 From: vsousa Date: Fri, 9 May 2025 10:34:19 +0100 Subject: [PATCH 8/9] QEXDEV-362 - Updated URL --- .../in/qatesting/configuration/PropertiesProvider.java | 2 +- .../java/com/devexperts/in/qatesting/AccountCreationTest.java | 1 - .../src/test/java/com/devexperts/in/qatesting/LoginPage.java | 1 - .../src/test/java/com/devexperts/in/qatesting/LoginTest.java | 4 ++-- .../java/com/devexperts/in/qatesting/RegistrationPage.java | 1 - playwright-workshop/src/test/resources/config.properties | 2 +- 6 files changed, 4 insertions(+), 7 deletions(-) diff --git a/playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java b/playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java index 6d772c8..a1b5a86 100644 --- a/playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java +++ b/playwright-workshop/src/main/java/com/devexperts/in/qatesting/configuration/PropertiesProvider.java @@ -45,4 +45,4 @@ public static String getProperty(String key) { throw new RuntimeException("Property not found: " + key); } } -} \ No newline at end of file +} diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java index 01bef4c..fe2c4d4 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java @@ -99,5 +99,4 @@ public static void afterAll(){ playwright.close(); } - } diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java index 4104c72..06e0f43 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginPage.java @@ -38,5 +38,4 @@ public void clickLogin(){ getButtonLogin().click(); } - } diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index ef9587d..6e0e502 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -14,9 +14,9 @@ public class LoginTest { private Browser browser; private Page page; private static final String USERNAME_DATA = "vsousa@devexperts.com"; - private static final String PASSWORD_DATA = "198881^^ZXcvb"; + private static final String PASSWORD_DATA = "1234567^^Abcde"; private static final String INCORRECT_USERNAME_DATA = "vsou@devexperts.com"; - private static final String INCORRECT_PASSWORD_DATA = "123456^^ASdfg"; + private static final String INCORRECT_PASSWORD_DATA = "123996^^ASdfg"; @BeforeAll diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java index 9513b09..2acfb17 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/RegistrationPage.java @@ -103,5 +103,4 @@ public void waitForPasswordFieldToBeVisible() { .setTimeout(60000)); } - } \ No newline at end of file diff --git a/playwright-workshop/src/test/resources/config.properties b/playwright-workshop/src/test/resources/config.properties index 9f93624..6f973c2 100644 --- a/playwright-workshop/src/test/resources/config.properties +++ b/playwright-workshop/src/test/resources/config.properties @@ -7,7 +7,7 @@ headless=true slow.mo=50 # Base URL for the application under test. -base.url=https://qa-testing.in.devexperts.com/internship/ +base.url=https://qa-testing.in.devexperts.com:7691/ # Username for the test user. test.user=changeit From b5502890062413002638a25635d6db0e3708afa3 Mon Sep 17 00:00:00 2001 From: vsousa Date: Fri, 9 May 2025 12:28:28 +0100 Subject: [PATCH 9/9] QEXDEV-362 - Increase navigation timeout and add URL logging for debug --- .../com/devexperts/in/qatesting/AccountCreationTest.java | 6 +++++- .../test/java/com/devexperts/in/qatesting/LoginTest.java | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java index fe2c4d4..3e0c91e 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/AccountCreationTest.java @@ -44,7 +44,11 @@ public static void beforeAll(){ public void setUp(){ browser = playwright.chromium().launch(); page = browser.newPage(); - page.navigate(PropertiesProvider.getProperty("base.url")); + + System.out.println("Navigating to: " + PropertiesProvider.getProperty("base.url")); + page.navigate(PropertiesProvider.getProperty("base.url"), + new Page.NavigateOptions().setTimeout(60000)); + generatedEmail = generateRandomEmail(); generatedPhone = generatePortuguesePhone(); } diff --git a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java index 6e0e502..1c97862 100644 --- a/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java +++ b/playwright-workshop/src/test/java/com/devexperts/in/qatesting/LoginTest.java @@ -28,7 +28,10 @@ public static void beforeAll(){ public void setUp(){ browser = playwright.chromium().launch(); page = browser.newPage(); - page.navigate(PropertiesProvider.getProperty("base.url")); + + System.out.println("Navigating to: " + PropertiesProvider.getProperty("base.url")); + page.navigate(PropertiesProvider.getProperty("base.url"), + new Page.NavigateOptions().setTimeout(60000)); } @Test