|
| 1 | +# 🛠️ Automation Testing Framework – CWD Limited (By Aditya) |
| 2 | + |
| 3 | +## 📌 Project Overview |
| 4 | +This repository contains **Automation Testing scripts** developed during my tenure at **CWD Limited**. |
| 5 | +The goal of this project was to **automate repetitive testing tasks**, improve testing efficiency, and ensure consistent quality in hardware/software integrated products. |
| 6 | + |
| 7 | +The scripts are designed to work **cross-platform (Windows & Linux)** and use **Selenium WebDriver** with Java, Maven, and other dependencies for browser automation. |
| 8 | + |
| 9 | +--- |
| 10 | + |
| 11 | +## 🎯 Why This Project? |
| 12 | +At CWD Limited, testing involved: |
| 13 | +- **Web Application UI Automation** |
| 14 | +- **Functional Test Automation** |
| 15 | +- **Role-Based User Creation & Validation** |
| 16 | +- **Dynamic Data Handling** (e.g., Excel integration) |
| 17 | +- **Screenshot Logging for Each Step** |
| 18 | +- **Retry Mechanisms for Failures** |
| 19 | + |
| 20 | +By automating these tasks, we reduced manual efforts, increased accuracy, and achieved faster test cycles. |
| 21 | + |
| 22 | +--- |
| 23 | + |
| 24 | +## 📂 What's Inside |
| 25 | +- **Multiple Automation Test Suites** – Each project folder contains automation scripts for specific modules or scenarios. |
| 26 | +- **Maven Project Structure** – Ensures easy build and dependency management. |
| 27 | +- **Dynamic Data Handling** – Some scripts read from Excel or other inputs. |
| 28 | +- **Screenshot Capturing** – Each test step is documented with screenshots. |
| 29 | +- **Empty Drivers Folder** – To be filled after downloading respective drivers. |
| 30 | + |
| 31 | +--- |
| 32 | + |
| 33 | +## ⚙️ Requirements |
| 34 | +Before running the scripts, ensure the following are installed: |
| 35 | + |
| 36 | +### **Common Requirements** |
| 37 | +- Java JDK 8+ installed & configured (`JAVA_HOME`) |
| 38 | +- Maven installed & configured (`MAVEN_HOME`) |
| 39 | +- Internet connection (to download dependencies) |
| 40 | +- Browser installed (Google Chrome recommended) |
| 41 | + |
| 42 | +### **Driver Binaries Required** |
| 43 | +These drivers are required for running the automation scripts: |
| 44 | +- **Apache Maven** – [Download Maven](https://maven.apache.org/download.cgi) |
| 45 | +- **ChromeDriver (Windows/Linux)** – [Download ChromeDriver](https://chromedriver.chromium.org/downloads) |
| 46 | +- **Apache POI** (For Excel operations) – Included via Maven dependencies |
| 47 | +- **Chromium ChromeDriver** – For Chromium browser automation (optional) |
| 48 | + |
| 49 | +⚠️ **Note:** |
| 50 | +The `drivers` folder inside each project is **empty**. You must **download the drivers** and **place them in the `drivers` folder** before running the scripts. |
| 51 | + |
| 52 | +--- |
| 53 | + |
| 54 | +## 💻 Installation & Setup |
| 55 | + |
| 56 | +### **1️⃣ Windows Setup** |
| 57 | +1. **Install Java JDK** |
| 58 | + - Download: [Java JDK](https://www.oracle.com/java/technologies/javase-downloads.html) |
| 59 | + - Add to PATH: |
| 60 | + ```powershell |
| 61 | + setx JAVA_HOME "C:\Program Files\Java\jdk-<version>" |
| 62 | + setx PATH "%JAVA_HOME%\bin;%PATH%" |
| 63 | + ``` |
| 64 | +
|
| 65 | +2. **Install Maven** |
| 66 | + - Extract Apache Maven (`apache-maven-3.9.10`) to a folder. |
| 67 | + - Add to PATH: |
| 68 | + ```powershell |
| 69 | + setx MAVEN_HOME "C:\path\to\apache-maven-3.9.10" |
| 70 | + setx PATH "%MAVEN_HOME%\bin;%PATH%" |
| 71 | + ``` |
| 72 | + - Verify: `mvn -version` |
| 73 | +
|
| 74 | +3. **Install ChromeDriver** |
| 75 | + - Download from [ChromeDriver site](https://chromedriver.chromium.org/downloads) matching your Chrome version. |
| 76 | + - Extract and place in the `drivers` folder of the project. |
| 77 | +
|
| 78 | +4. **Apache POI** |
| 79 | + - Added via `pom.xml` – Maven will auto-download dependencies. |
| 80 | +
|
| 81 | +5. **Run the Tests** |
| 82 | + ```powershell |
| 83 | + mvn clean test |
| 84 | +
|
| 85 | +
|
| 86 | +--- |
| 87 | +
|
| 88 | +### **2️⃣ Linux Setup** |
| 89 | +
|
| 90 | +1. **Install Java JDK** |
| 91 | +
|
| 92 | + ```bash |
| 93 | + sudo apt update |
| 94 | + sudo apt install default-jdk |
| 95 | + java -version |
| 96 | + ``` |
| 97 | + |
| 98 | +2. **Install Maven** |
| 99 | + |
| 100 | + ```bash |
| 101 | + sudo apt install maven |
| 102 | + mvn -version |
| 103 | + ``` |
| 104 | + |
| 105 | +3. **Install Chrome & ChromeDriver** |
| 106 | + |
| 107 | + ```bash |
| 108 | + sudo apt install wget unzip |
| 109 | + wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb |
| 110 | + sudo dpkg -i google-chrome-stable_current_amd64.deb |
| 111 | + sudo apt --fix-broken install |
| 112 | + |
| 113 | + CHROME_VERSION=$(google-chrome --version | grep -oE "[0-9]+") |
| 114 | + wget https://chromedriver.storage.googleapis.com/<MATCHING_VERSION>/chromedriver_linux64.zip |
| 115 | + unzip chromedriver_linux64.zip |
| 116 | + mv chromedriver drivers/ |
| 117 | + chmod +x drivers/chromedriver |
| 118 | + ``` |
| 119 | + |
| 120 | +4. **Apache POI** |
| 121 | + |
| 122 | + * Included in Maven dependencies; no manual install needed. |
| 123 | + |
| 124 | +5. **Run the Tests** |
| 125 | + |
| 126 | + ```bash |
| 127 | + mvn clean test |
| 128 | + ``` |
| 129 | + |
| 130 | +--- |
| 131 | + |
| 132 | +## 📌 How to Run the Project |
| 133 | + |
| 134 | +1. Clone the repository: |
| 135 | + |
| 136 | + ```bash |
| 137 | + git clone https://github.com/AdityaKonda6/Automation-Testing-CWD-By-Aditya.git |
| 138 | + ``` |
| 139 | +2. Navigate to a specific project folder. |
| 140 | +3. Download and place the required drivers into the `drivers` folder. |
| 141 | +4. Build & run: |
| 142 | + |
| 143 | + ```bash |
| 144 | + mvn clean test |
| 145 | + ``` |
| 146 | + |
| 147 | +--- |
| 148 | + |
| 149 | +## 📝 Notes |
| 150 | + |
| 151 | +* Ensure **ChromeDriver version matches** your installed Chrome browser version. |
| 152 | +* All **driver files are excluded** from the repository for security and compatibility reasons. |
| 153 | +* This framework works on both **Windows and Linux** without code changes. |
| 154 | +* Test results and screenshots are generated in the `target` folder after execution. |
| 155 | + |
| 156 | +--- |
| 157 | + |
| 158 | +🧪 Technologies You Now Have Installed |
| 159 | +``` |
| 160 | +| Tool | Purpose | |
| 161 | +| --------------------- | ------------------------------------- | |
| 162 | +| Java JDK | For compiling and running Java | |
| 163 | +| Maven | For managing dependencies and build | |
| 164 | +| Chrome | To open and test the website | |
| 165 | +| ChromeDriver | Interface between Selenium and Chrome | |
| 166 | +| IDE (VSCode/IntelliJ) | Easier coding and debugging | |
| 167 | +| Git | Version control and GitHub access | |
| 168 | +``` |
| 169 | + |
| 170 | +🔎 Troubleshooting Tips |
| 171 | +``` |
| 172 | +| Problem | Fix | |
| 173 | +| ------------------------ | ---------------------------------------------------- | |
| 174 | +| `NoSuchElementException` | Check if IDs are changing dynamically | |
| 175 | +| Chrome doesn't open | Check `chromedriver.exe` version matches Chrome | |
| 176 | +| `mvn` not recognized | Check your Maven PATH setup | |
| 177 | +| Test not doing anything | Add `Thread.sleep()` or check dynamic loading (AJAX) | |
| 178 | +``` |
| 179 | + |
| 180 | +--- |
| 181 | + |
| 182 | + |
| 183 | +<img align="right" height="250" width="375" alt="" src="https://github.com/AdityaKonda6/AdityaKonda6/blob/main/giphy2.webp" /> |
| 184 | + |
| 185 | +## Hey there 👋, I'm [<a href="https://adityakonda04.vercel.app/">Aditya!</a>](https://github.com/AdityaKonda6) |
| 186 | + |
| 187 | +[](https://www.linkedin.com/in/aditya-adi-konda/) |
| 188 | +[](https://twitter.com/AdityaKonda7) |
| 189 | +[](https://www.instagram.com/konda_aditya/) |
| 190 | + |
| 191 | +### Glad to see you here!  |
| 192 | + |
| 193 | +I’m a **2025 IT Graduate** passionate about **DevOps, Cloud, and Software Development** 🚀. |
| 194 | +My mission? To **bridge the gap between development and operations**—building scalable systems, automating workflows, and ensuring quality from code to deployment. |
| 195 | + |
| 196 | +With a strong foundation in **Java, SQL, Linux**, and hands-on experience with **CI/CD pipelines, Selenium automation, cloud services, and Android development**, I thrive in solving problems end-to-end—from writing code to deploying it in production. |
| 197 | + |
| 198 | +Recently, at **CWD Limited**, I worked on: |
| 199 | +- **Automation Testing Frameworks** (Selenium, Java, Maven) |
| 200 | +- **Linux-based system configurations & debugging** |
| 201 | +- **Hardware-software integration testing** |
| 202 | +- API testing with Postman |
| 203 | +…and in the process, strengthened my DevOps skill set. |
| 204 | + |
| 205 | +💡 Curious mind. Fast learner. Always ready to build, break, and rebuild—better. |
| 206 | + |
| 207 | +--- |
| 208 | + |
| 209 | +### 🚀 What I’m Working On: |
| 210 | +- Building **DevOps projects** (Jenkins, Docker, Kubernetes, AWS, Ansible) |
| 211 | +- Enhancing **automation frameworks** for testing & deployment |
| 212 | +- Crafting **Android apps** and backend services |
| 213 | +- Expanding my **Linux administration** skills |
| 214 | + |
| 215 | +--- |
| 216 | + |
| 217 | +### 💼 My Tech Stack: |
| 218 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/java/java.png" alt="Java"></code> |
| 219 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/linux/linux.png" alt="Linux"></code> |
| 220 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/docker/docker.png" alt="Docker"></code> |
| 221 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/kubernetes/kubernetes.png" alt="Kubernetes"></code> |
| 222 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/aws/aws.png" alt="AWS"></code> |
| 223 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/python/python.png" alt="Python"></code> |
| 224 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/javascript/javascript.png" alt="JavaScript"></code> |
| 225 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/react/react.png" alt="React"></code> |
| 226 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/sql/sql.png" alt="SQL"></code> |
| 227 | +<code><img height="27" src="https://raw.githubusercontent.com/github/explore/master/topics/git/git.png" alt="Git"></code> |
| 228 | + |
| 229 | +--- |
| 230 | + |
| 231 | +<img align="right" height="250" width="375" alt="" src="https://raw.githubusercontent.com/iampavangandhi/iampavangandhi/master/gifs/coder.gif" /> |
| 232 | + |
| 233 | +### 📌 Highlights: |
| 234 | +- 🛠 Built **dynamic Selenium automation scripts** integrated with Maven |
| 235 | +- 🚀 Created & deployed **full-stack and Android applications** |
| 236 | +- 🐧 Comfortable with **Linux system administration & shell scripting** |
| 237 | +- 📦 Implemented CI/CD workflows for smoother deployments |
| 238 | +- ☁️ Learning & applying **cloud infrastructure concepts** |
| 239 | + |
| 240 | +--- |
| 241 | + |
| 242 | +### 📫 How to Reach Me: |
| 243 | +- Email: **adityakonda04@gmail.com** |
| 244 | +- Portfolio: [adityakonda04.vercel.app](https://adityakonda04.vercel.app/) |
| 245 | +- LinkedIn: [Aditya Adi Konda](https://www.linkedin.com/in/aditya-adi-konda/) |
| 246 | + |
| 247 | +--- |
| 248 | + |
| 249 | +### 📊 GitHub Stats: |
| 250 | +<details> |
| 251 | + <summary><b>⚡ GitHub Stats</b></summary> |
| 252 | + <br /> |
| 253 | + <img height="180em" src="https://github-readme-stats.vercel.app/api?username=adityakonda6&show_icons=true&hide_border=true&&count_private=true&include_all_commits=true" /> |
| 254 | + <img height="180em" src="https://github-readme-stats.vercel.app/api/top-langs/?username=adityakonda6&show_icons=true&hide_border=true&layout=compact&langs_count=8"/> |
| 255 | +</details> |
| 256 | + |
| 257 | +<details> |
| 258 | + <summary><b>🔥 GitHub Streaks</b></summary> |
| 259 | + <br /> |
| 260 | + <img height="180em" src="https://github-readme-streak-stats.herokuapp.com/?user=adityakonda6&hide_border=true" /> |
| 261 | +</details> |
| 262 | + |
| 263 | +<details> |
| 264 | + <summary><b>☄️ LeetCode Stats</b></summary> |
| 265 | + <br /> |
| 266 | + <p align="center"><img align="center" src="https://leetcard.jacoblin.cool/adityakonda04?theme=wtf&font=Coda%20Caption&ext=heatmap" /></p> |
| 267 | +</details> |
| 268 | + |
| 269 | +--- |
| 270 | + |
| 271 | +💬 Always open to collaborations, tech discussions, and exploring new opportunities in **DevOps, Cloud, and Software Development**. |
0 commit comments