-
UI Automation: Built with C# Playwright and NUnit for web UI testing.
-
API Automation: Developed using C# RestSharp and xUnit for testing RESTful APIs.
-
GitHub Actions Pipeline: Integrated for continuous integration and test execution.
TestAutomationProject/
│── UI_Playwright_NUnit/ # UI automation using Playwright & NUnit
│ ├── Pages/ # Page Object Model (POM) implementation
│ ├── Tests/ # NUnit test cases
│ ├── Utils/ # Helper utilities
│ ├── playwright.config.ts # Playwright configuration
│ └── README.md # UI test documentation
│
│── API_RestSharp_xUnit/ # API automation using RestSharp & xUnit
│ ├── Endpoints/ # API endpoints and request models
│ ├── Tests/ # xUnit test cases
│ ├── Utils/ # Common utilities
│ ├── appsettings.json # API test configurations
│ └── README.md # API test documentation
│
│── .github/workflows/ # GitHub Actions pipeline for CI/CD
│ ├── ui-tests.yml # UI test execution pipeline
│ ├── api-tests.yml # API test execution pipeline
│
│── TestAutomationProject.sln # Visual Studio solution file
│── .gitignore # Ignore files configuration
│── README.md # Main project documentation
Ensure you have the following installed:
-
.NET SDK 8 or higher
-
Visual Studio (with NUnit and xUnit test support)
-
Node.js (for Playwright installation)
-
Playwright CLI (for UI testing)
Clone the repository:
- git clone https://github.com/your-repo/TestAutomationProject.git cd TestAutomationProject
- cd UI_Playwright_NUnit
- pwsh bin\Debug\netX.X\playwright.ps1 install
- dotnet restore
Run UI Tests (Playwright + NUnit)
- cd UUI_Playwright_Project dotnet test
Run API Tests (RestSharp + xUnit)
- cd API_RestSharp_Project dotnet test
This project includes a GitHub Actions pipeline for automated test execution on push and pull requests.
UI and API Tests Workflow (.github/workflows/test-pipeline.yml)
Playwright Traces: playwright show-trace trace.zip
Extent Extent-UI_{date}.html file you can find on this path: TestAutomationProject\UI_Playwright_Project\Reports
xUnit HTML Reports (if configured): dotnet test --logger:"html;LogFileName=TestResults.html"
-
Fork the repo and create a new branch.
-
Make your changes and commit them.
-
Push your branch and submit a pull request.
This project is licensed under the MIT License.
