From 38caa75dd19fd04e06460f42c7f533318cfe0d2e Mon Sep 17 00:00:00 2001 From: Nithu Lakshmi Date: Sat, 7 Dec 2024 13:10:54 +0530 Subject: [PATCH 1/3] First Commit --- Para_Bank/.classpath | 11 ++ Para_Bank/.project | 17 +++ .../org.eclipse.core.resources.prefs | 2 + .../.settings/org.eclipse.jdt.core.prefs | 14 ++ .../bin/para_bank_project/Para_Bank.class | Bin 0 -> 5341 bytes .../src/para_bank_project/Para_Bank.java | 125 ++++++++++++++++++ 6 files changed, 169 insertions(+) create mode 100644 Para_Bank/.classpath create mode 100644 Para_Bank/.project create mode 100644 Para_Bank/.settings/org.eclipse.core.resources.prefs create mode 100644 Para_Bank/.settings/org.eclipse.jdt.core.prefs create mode 100644 Para_Bank/bin/para_bank_project/Para_Bank.class create mode 100644 Para_Bank/src/para_bank_project/Para_Bank.java diff --git a/Para_Bank/.classpath b/Para_Bank/.classpath new file mode 100644 index 0000000..900895c --- /dev/null +++ b/Para_Bank/.classpath @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/Para_Bank/.project b/Para_Bank/.project new file mode 100644 index 0000000..7415687 --- /dev/null +++ b/Para_Bank/.project @@ -0,0 +1,17 @@ + + + Para_Bank + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Para_Bank/.settings/org.eclipse.core.resources.prefs b/Para_Bank/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/Para_Bank/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Para_Bank/.settings/org.eclipse.jdt.core.prefs b/Para_Bank/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..6e5f874 --- /dev/null +++ b/Para_Bank/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,14 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=22 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=22 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=22 diff --git a/Para_Bank/bin/para_bank_project/Para_Bank.class b/Para_Bank/bin/para_bank_project/Para_Bank.class new file mode 100644 index 0000000000000000000000000000000000000000..120ed8c8e5a2903f441c37fa1da23b0771f2460c GIT binary patch literal 5341 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 Y6aIp~F(>CSPhYC2WF|J??-iB*0Ty57BLDyZ literal 0 HcmV?d00001 diff --git a/Para_Bank/src/para_bank_project/Para_Bank.java b/Para_Bank/src/para_bank_project/Para_Bank.java new file mode 100644 index 0000000..7a42709 --- /dev/null +++ b/Para_Bank/src/para_bank_project/Para_Bank.java @@ -0,0 +1,125 @@ +package para_bank_project; + +import java.time.Duration; + +import org.openqa.selenium.By; +import org.openqa.selenium.JavascriptExecutor; +import org.openqa.selenium.WebDriver; +import org.openqa.selenium.WebElement; +import org.openqa.selenium.chrome.ChromeDriver; +import org.openqa.selenium.support.ui.ExpectedConditions; +import org.openqa.selenium.support.ui.WebDriverWait; + +public class Para_Bank { + + public static void main(String[] args) { + WebDriver driver = new ChromeDriver(); + driver.manage().window().maximize(); + + WebDriverWait wait = new WebDriverWait(driver, Duration.ofSeconds(10)); + driver.get("https://parabank.parasoft.com/parabank/index.htm"); + waitForTheUser(); + + WebElement registerButton = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*[text()='Register']"))); + registerButton.click(); + waitForTheUser(); + + JavascriptExecutor scrollDown = (JavascriptExecutor) driver; + scrollDown.executeScript("window.scrollBy(0,200)"); + waitForTheUser(); + + WebElement firstName = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.firstName']"))); + firstName.click(); + firstName.sendKeys("Ethan"); + waitForTheUser(); + + WebElement lastName = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.lastName']"))); + lastName.click(); + lastName.sendKeys("Winters"); + waitForTheUser(); + + WebElement addressField = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.address.street']"))); + addressField.click(); + addressField.sendKeys("Old Dulvey Plantation, 136 Bayou Road"); + waitForTheUser(); + + WebElement cityField = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.address.city']"))); + cityField.click(); + cityField.sendKeys("Dulvey"); + waitForTheUser(); + + WebElement stateField = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.address.state']"))); + stateField.click(); + stateField.sendKeys("Louisiana"); + waitForTheUser(); + + WebElement zipCode = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.address.zipCode']"))); + zipCode.click(); + zipCode.sendKeys("70544"); + waitForTheUser(); + + WebElement phoneNumber = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.phoneNumber']"))); + phoneNumber.click(); + phoneNumber.sendKeys("(337) 555-0199"); + waitForTheUser(); + + WebElement ssnField = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.ssn']"))); + ssnField.click(); + ssnField.sendKeys("441-75-8901"); + waitForTheUser(); + + WebElement userName = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.username']"))); + userName.click(); + userName.sendKeys("ethan@1984"); + waitForTheUser(); + + WebElement passWord = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='customer.password']"))); + passWord.click(); + passWord.sendKeys("EthanwinterS@1984!"); + waitForTheUser(); + + WebElement repeatedPassword = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@id='repeatedPassword']"))); + repeatedPassword.click(); + repeatedPassword.sendKeys("EthanwinterS@1984!"); + waitForTheUser(); + + WebElement submitButton = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("(//input[@type='submit'])[2]"))); + submitButton.click(); + waitForTheUser(); + + WebElement loginMessage = wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//h1[@class='title']"))); + System.out.println("Login Message: " + loginMessage.getText()); + System.out.println("Your account was created successfully. You are now logged in."); + waitForTheUser(); + + WebElement logOut = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*[text()='Log Out']"))); + logOut.click(); + System.out.println(); + System.out.println("Successfully logged out."); + waitForTheUser(); + + WebElement usernameField = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@name='username']"))); + usernameField.click(); + usernameField.sendKeys("ethan@1984"); + waitForTheUser(); + + WebElement passwordField = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@name='password']"))); + passwordField.click(); + passwordField.sendKeys("EthanwinterS@1984!"); + waitForTheUser(); + + WebElement loginButton = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@value='Log In']"))); + loginButton.click(); + waitForTheUser(); + + driver.close(); + } + + public static void waitForTheUser() { + try { + Thread.sleep(5000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } +} From b376137132402ed59b36e87d0659ec90d11ae5e9 Mon Sep 17 00:00:00 2001 From: Nithu Lakshmi <110821617+niths09@users.noreply.github.com> Date: Sat, 7 Dec 2024 13:11:30 +0530 Subject: [PATCH 2/3] Delete ToolsQA_Project directory --- ToolsQA_Project/.classpath | 11 -- ToolsQA_Project/.project | 17 --- .../org.eclipse.core.resources.prefs | 2 - .../.settings/org.eclipse.jdt.core.prefs | 14 --- .../tools_qa_page/Registeration_Form.class | Bin 4249 -> 0 bytes .../src/tools_qa_page/Registeration_Form.java | 99 ------------------ 6 files changed, 143 deletions(-) delete mode 100644 ToolsQA_Project/.classpath delete mode 100644 ToolsQA_Project/.project delete mode 100644 ToolsQA_Project/.settings/org.eclipse.core.resources.prefs delete mode 100644 ToolsQA_Project/.settings/org.eclipse.jdt.core.prefs delete mode 100644 ToolsQA_Project/bin/tools_qa_page/Registeration_Form.class delete mode 100644 ToolsQA_Project/src/tools_qa_page/Registeration_Form.java diff --git a/ToolsQA_Project/.classpath b/ToolsQA_Project/.classpath deleted file mode 100644 index 900895c..0000000 --- a/ToolsQA_Project/.classpath +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/ToolsQA_Project/.project b/ToolsQA_Project/.project deleted file mode 100644 index 7cf210a..0000000 --- a/ToolsQA_Project/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - ToolsQA_Project - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/ToolsQA_Project/.settings/org.eclipse.core.resources.prefs b/ToolsQA_Project/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 99f26c0..0000000 --- a/ToolsQA_Project/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/=UTF-8 diff --git a/ToolsQA_Project/.settings/org.eclipse.jdt.core.prefs b/ToolsQA_Project/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 6e5f874..0000000 --- a/ToolsQA_Project/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,14 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=22 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=22 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning -org.eclipse.jdt.core.compiler.release=enabled -org.eclipse.jdt.core.compiler.source=22 diff --git a/ToolsQA_Project/bin/tools_qa_page/Registeration_Form.class b/ToolsQA_Project/bin/tools_qa_page/Registeration_Form.class deleted file mode 100644 index e93963cc549b560f863c2ef5bdfa588825123684..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4249 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 b*X7)3Ip>q#SJ!a7ScErtP4N0=b Date: Sat, 7 Dec 2024 13:18:50 +0530 Subject: [PATCH 3/3] First README.md --- README.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 8781783..a9089b7 100644 --- a/README.md +++ b/README.md @@ -1 +1,24 @@ -# Registration-Form-Automation \ No newline at end of file +# Para Bank Project + +## Description +The ParaBank project is an automation script for testing the functionalities of the ParaBank online banking application using Selenium WebDriver. The script performs actions such as account registration, login, and logout by interacting with the web elements on the application. + +## Features +- **User Registration**: Automates the process of filling out and submitting a user registration form with details like name, address, phone number, and more. +- **Login**: Automates the login process using the credentials created during registration. +- **Logout**: Automates the logout action after logging in successfully. +- **Page Interactions**: Handles actions like filling out form fields, clicking buttons, and scrolling through pages. +- **Synchronization**: Implements explicit waits to ensure that the script interacts with elements only when they are available for interaction. + +## Prerequisites +Before running the script, ensure that the following are installed on your system: +- **Java**: JDK 8 or higher +- **Eclipse IDE** (or any other IDE that supports Java) +- **Selenium WebDriver**: The Selenium WebDriver Java library is needed to interact with the browser. +- **ChromeDriver**: The ChromeDriver executable is required for Chrome browser automation. + +## Technologies Used +- **Java**: The core programming language for writing the test script. +- **Selenium WebDriver**: A tool for automating web browser interaction. +- **JUnit** (optional, not included in the provided code but can be used for structuring tests). +- **ChromeDriver**: A standalone server that implements WebDriver's wire protocol for Chromium-based browsers like Google Chrome.