Added Readme file

master
Yevhen Unico 1 year ago
parent 17bd3b7917
commit 8d6079601c

@ -0,0 +1,72 @@
# Playwright Cucumber Test Automation
A test automation framework using **Playwright**, **Cucumber**, and **TestNG**, designed for both UI and API testing.
## 📂 Project Structure
```
main
├── kotlin
│ ├── core # Core modules (exceptions, listeners, properties)
│ ├── utils # API and utility classes
│ ├── web # Browser and UI element handling
│ ├── projects/example # Step Definitions for Cucumber
│ └── resources # Configuration files (e.g., urls.properties)
└── test
└── kotlin # Test classes (UI and API)
```
## 🚀 Quick Start
1. **Clone the repository**:
```bash
git clone https://tapo4ek-git.duckdns.orgTapo4ek/Pitche_Test_Task.git
cd <project-name>
```
2. **Run tests**:
Ensure `testng.xml` is located in `src/test/resources`. Then execute tests:
```bash
./gradlew clean test
```
3. **Filter by tags** (for Cucumber scenarios):
```bash
./gradlew test -Dcucumber.filter.tags="@"
```
## 🛠 Configuration
- **urls.properties**: Used to store base URLs or other properties:
```properties
baseUrl=https://example.com
```
- **testng.xml**: Defines the test suites and classes to run:
```xml
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Suite">
<listeners>
<listener class-name="core.listeners.TestNGListener" />
</listeners>
<test name="ExampleUISuite">
<classes>
<class name="UITestTask" />
</classes>
</test>
<test name="ExampleApiSuite">
<classes>
<class name="ApiTestTask" />
</classes>
</test>
</suite>
```
## 📂 Tools Used
- **Playwright**: For browser automation.
- **Cucumber**: For BDD-style test definitions.
- **TestNG**: For test execution management.
- **Gradle**: For build and dependency management.
---
Loading…
Cancel
Save