Skip to content

Commit 93acc07

Browse files
authored
Refactor README for clarity and structure
Updated README to improve clarity and formatting.
1 parent 05b5669 commit 93acc07

File tree

1 file changed

+48
-36
lines changed

1 file changed

+48
-36
lines changed

README.md

Lines changed: 48 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,91 +1,103 @@
11
# Selenium-Python-E2E-Testing-Suite
22
End-to-End UI test automation for a live e-commerce site – 100% open source, CI-ready, Allure reports, and Dockerized.
33

4-
This project was built from scratch to demonstrate a professional, scalable, and maintainable test automation framework using industry-best-practices.
4+
This project was built from scratch to demonstrate a professional test automation framework using industry best practices.
5+
6+
### Target Site :
57

6-
🎯 Target Site
78
URL: https://www.saucedemo.com/
89

9-
✨ Key Features
10-
Page Object Model (POM): Fully implemented for clean, maintainable, and reusable test code.
10+
### Key Features :
1111

12-
Pytest Framework: Leverages pytest for test running, fixtures, and assertions.
12+
Page Object Model (POM) for clean, maintainable, and reusable test code.
1313

14-
Allure Reports: Generates beautiful, interactive, and shareable HTML reports with step-by-step logging.
14+
Pytest Framework for test running, fixtures, and assertions.
1515

16-
Dockerized: The entire suite is containerized with docker-compose. It runs a standalone Selenium Grid headlessly, making it CI/CD ready.
16+
Allure Reports: Generates interactive and shareable HTML reports with step-by-step logging.
1717

18-
Robust Waiting: Uses Docker healthchecks to ensure tests only run when the Selenium Grid is 100% ready, eliminating flaky "wait" scripts.
18+
Dockerized: The entire suite is containerized with docker-compose. It runs a standalone Selenium Grid headlessly, making it CI/CD ready.
1919

2020
Data-Driven: All test data (users, passwords, errors) is stored externally in data/test_data.json.
2121

2222
Configuration Management: Environment details (like the base_url) are stored in pytest.ini, not hardcoded.
2323

24-
🚀 How to Run
25-
1. The Docker / CI-Ready Way (Recommended)
26-
This is the simplest and most reliable way to run the entire suite. It runs headlessly and exactly as it would in a CI/CD pipeline.
27-
28-
Prerequisites:
24+
### How to Run Using Docker
2925

30-
[suspicious link removed] installed and running.
26+
**Prerequisites:**
3127

32-
Run the Suite:
28+
Docker installed and running.
3329

34-
Bash
3530

36-
# 1. Clone the repository
37-
git clone [https://github.com/YOUR_USERNAME/Selenium-Python-E2E-Testing-Suite.git](https://github.com/YOUR_USERNAME/Selenium-Python-E2E-Testing-Suite.git)
31+
**Clone the repository**
32+
```
33+
git clone https://github.com/AminaSaoudi/Selenium-Python-E2E-Testing-Suite.git
3834
cd Selenium-Python-E2E-Testing-Suite
39-
2. Build and run the containers
35+
```
36+
37+
**Build and run the containers**
38+
4039
This command will:
40+
4141
- Build the 'python-tests' image
4242
- Start the 'selenium' container
4343
- Wait for Selenium to be healthy
4444
- Run pytest, then stop everything.
45+
```
4546
docker-compose up --build --abort-on-container-exit
47+
```
4648

49+
### How to Run on your local machine
4750

48-
### 2\. The Local / Development Way
4951
Use this method if you want to run tests locally for development or debugging.
5052

51-
Prerequisites:
53+
*Prerequisites:*
5254

5355
Python 3.10+
5456

5557
Google Chrome
5658

5759
Allure (for viewing reports)
5860

59-
Run the Suite:
61+
**Clone the repository**
6062

61-
Bash
62-
63-
# 1. Clone the repository
64-
git clone [https://github.com/YOUR_USERNAME/Selenium-Python-E2E-Testing-Suite.git](https://github.com/YOUR_USERNAME/Selenium-Python-E2E-Testing-Suite.git)
63+
```
64+
git clone https://github.com/AminaSaoudi/Selenium-Python-E2E-Testing-Suite.git
6565
cd Selenium-Python-E2E-Testing-Suite
66-
2. Create and activate a virtual environment
66+
```
67+
68+
**Create and activate a virtual environment**
69+
70+
```
6771
python -m venv venv source venv/bin/activate # (or .\venv\Scripts\activate on Windows)
72+
```
6873

69-
3. Install dependencies
74+
**Install dependencies**
75+
76+
```
7077
pip install -r requirements.txt
78+
```
79+
80+
**Run pytest**
7181

72-
4. Run pytest
7382
(This will run locally using webdriver-manager)
83+
```
7484
pytest
85+
```
86+
7587

88+
### Viewing the Allure Report
7689

77-
-----
78-
📊 Viewing the Allure Report
7990
After running the tests (with either method), your test results are in the allure-results folder.
8091

81-
Make sure you have Allure installed (scoop install allure or brew install allure).
92+
Make sure you have Allure installed
93+
94+
```scoop install allure or brew install allure```
8295

8396
Serve the report:
8497

85-
```bash
98+
```
8699
allure serve allure-results
87100
```
88-
Your browser will automatically open with a beautiful, interactive dashboard.
101+
Your browser will automatically open with a beautiful, interactive dashboard (Example below)
89102

90-
```
91-
```
103+
<img width="1857" height="888" alt="image" src="https://github.com/user-attachments/assets/64a96f21-e8e4-4fd0-8dcf-f05472fbb2e4" />

0 commit comments

Comments
 (0)