Table of content |
|---|
1. Overview1. Overview
Purpose
This project automates API testing using Postman collections, executed through GitHub Actions CI/CD pipelines with the following capabilities:
- Execute Postman collections automatically
- Support multiple environments (dev / test / stage)
- Secure authentication using Azure AD OAuth2
- Dynamic runtime parameters
- Automated reporting using Allure Reports
- Hosting execution reports on GitHub Pages
2. Technology Stack
Repository link: https://github.com/EG-A-S/EGZP-Automation-Testing: Test repo for EGZP PartnerPortal
Component | Technology |
API Testing Tool | Postman Collections |
Execution Engine | Postman CLI & Newman |
CI/CD Platform | GitHub Actions |
Authentication | Azure AD Client Credentials |
Reporting | Allure Reports |
Environment Config | Postman Environment JSON |
Scripting | Shell scripts (Bash) |
...
- Cloud-based collection execution
- Secure Azure AD authentication
- Dynamic input support
- Ideal for quick on-demand runs
When to Use
- For ad-hoc sanity test executions
- For debugging specific collections
...
8. How to Execute Tests from GitHub
Steps:
- Go to GitHub Repository
- Open "Actions" tab
- Choose workflow (a or b):
...
- Run Workorder Collections with ID
OR
...
- Run Workorder Collections with JSON File
- Click "Run Workflow"
- Provide required inputs
- View execution logs and report
9. Reporting System
9.1 Tool Used
- Allure Reports
9.2 What It Provides
- Pass/Fail dashboard
- API request logs
- Execution history
- Shareable HTML reports
9.3 Hosting
Reports are automatically published to: https://eg-a-s.github.io/EGZP-Automation-Testing/
10. Security Best Practices
- No tokens stored in code
- All credentials in GitHub Secrets
- Azure AD token generated per run
- Short-lived bearer tokens
- No sensitive data in environment files
...
