A complete QA automation framework for Jules AI, combining UI automation with Playwright and API testing using Postman + Newman. Integrated with GitHub Actions for a full CI/CD pipeline experience.
π GitHub Repository
jules-ai-qa-assignment/
βββ tests/
β βββ ui/ # UI automation tests (Playwright)
β βββ api/
β βββ newman/ # Newman runner script
β βββ postman/ # Postman collection and environment
βββ reports/ # Test reports (UI & API)
βββ .github/workflows/ci.yml # GitHub Actions workflow
βββ playwright.config.js # Playwright configuration
βββ BUG-REPORT.md # Logged bugs during testing
βββ README.md
β
Features
π― UI Automation (Playwright + JavaScript)
Valid login/logout flow
Dashboard navigation verification
Data-driven form validation using external JSON
HTML & JUnit report generation
Global setup/teardown for authentication and cleanup
π API Automation (Postman + Newman)
GraphQL login success and failure validation
API β UI data consistency checks
Error code validation for edge cases (400, 401, 500)
HTML report generation using newman-reporter-htmlextra
π CI/CD Integration
GitHub Actions pipeline with two parallel jobs:
ui-tests: Runs Playwright tests and uploads reports
api-tests: Executes Newman tests and uploads reports
Test artifacts (reports) uploaded to GitHub Actions
π Bug Report
ID Title Severity Priority
JULES-001 Email format not validated on UI Medium High
π Details available in: BUG-REPORT.md
π Getting Started
π Prerequisites
Node.js >= 16.x
npm
Newman (npm install -g newman)
Postman (optional, for editing collections)
π¦ Install Dependencies
bash
Copy
Edit
npm install
βΆοΈ Run UI Tests (Playwright)
bash
Copy
Edit
npx playwright test
Or run a specific test:
bash
Copy
Edit
npx playwright test tests/ui/login.spec.js
π Run API Tests (Postman + Newman)
bash
Copy
Edit
node tests/api/newman/run-api-tests.js
πΈ Reports
UI Report: reports/ui/html-report/index.html
API Report: reports/api/html-report.html
Reports are also uploaded to GitHub Actions as artifacts.
π§ͺ CI/CD Workflow
Located at: .github/workflows/ci.yml
yaml
Copy
Edit
name: CI Tests
jobs:
ui-tests:
# Playwright UI Tests
api-tests:
# Newman API Tests
Runs on push/pull request to main, generates reports, and uploads them to GitHub.
π€ Author
Shobhit
Automation Test Engineer
π [LinkedIn](https://www.linkedin.com/in/shobhit-budhlakoti-34492b161)