List of commits in this pr: * Begin essential Playwright test cases for big truck * Implement non serviceable big truck vin lookup and fix test case tags * Rename non serviceable vin cases * Common sense .env.dev example * Move extraneous stuff to .env.example * Add playwright environment file to gitignore * Stop tracking .env.dev * Specify file ignore * Ignore .env * Implement advanced tests for big truck * Remove duplicate smoke test * Implement PR feedback * Add comments to type definitions for clarity for any future uses * More descriptive env comment |
||
|---|---|---|
| .. | ||
| advanced | ||
| mockResponses | ||
| 0000__M.test.ts | ||
| 0001_EssentialReplaceStatisAdas.ts | ||
| 0002_EssentialRepairInShopAcura.ts | ||
| 0003_EssentialTpaNotEnabledBailout.ts | ||
| 0004_EssentialTpaEnabled.ts | ||
| 0005_EssentialReplaceDynamicAdas.ts | ||
| 0007_EssentialRepairHyundaiMobile.ts | ||
| 0009_EssentialPartsServiceErrorBailout.ts | ||
| 0010_EssentialVehicleNotFoundBailout.ts | ||
| 0011_EssentialDoNotSeeShopBailout.ts | ||
| 0012_EssentialUniqueGlass.ts | ||
| 0013_EssentialReplace.ts | ||
| 0014_EssentialRepairMobile.ts | ||
| 0015_EssentialReplacePartsQuestionsDropoff.ts | ||
| 0016_EssentialRepairInShop.ts | ||
| 0017_EssentialTpaNotEnabledBailoutReplace.ts | ||
| 0018_EssentialTpaEnabledReplace.ts | ||
| 0019_EssentialTpaEnabledReplaceRecal.ts | ||
| 0020_EssentialVehicleLookupBailout.ts | ||
| 0021_EssentialPriceServiceErrorBailout.ts | ||
| 0022_EssentialServiceableBigTruck.ts | ||
| 0023_EssentialNonServiceableBigTruck.ts | ||
| 0024_EssentialNonServiceableBigTruckVin.ts | ||
| README.md | ||
ISS QA Automation Framework
An automated testing framework for Insurance Self-Service (ISS) application using Playwright with TypeScript.
Technology Stack
• Playwright - Core testing framework • TypeScript - Programming language • Node.js - Runtime environment • SauceLabs/Dockers - Cross-browser testing platform
Key Features
• Page Object Model implementation • Data-driven test approach • Cross-browser testing support • Parallel test execution • HTML report generation • Environment-specific configurations • SauceLabs integration
Test Scenarios
The framework includes various test scenarios covering essential flows like:
- Vehicle Not Found Tests (Scenario 10)
- Do Not See Shop Tests (Scenario 11)
- Unique Glass Tests (Scenario 12)
- Replace Tests (Scenario 13)
- Repair Mobile Tests (Scenario 14)
- Replace Parts Questions Dropoff Tests (Scenario 15)
- HP Tests (Scenario 16)
Installation
Install dependencies
npm install
Install SauceLabs CLI
npm install saucectl
Configuration
• Environment configurations in .env files • SauceLabs configuration in config.yml • Playwright configuration in playwright.config.ts
Project Structure
. ├── tests/ # Test scenarios and cases ├── pages/ # Page Object Models ├── business-logic/ # Business logic and data models ├── impl/ # Implementation utilities └── artifacts/ # Test artifacts and results
Running Tests
Run all tests
npx playwright test
Run a specific test file
npx playwright test tests/0000__M.test.ts
Run tests with specific tag (cognitive approach)
npx playwright test --grep "@smoke"
Test Reports
Test results are available in:
• ortoni report (summerized HTML) • HTML format (playwright-report) • JUnit format • SauceLabs dashboard
Key Features
Page Object Model implementation Data-driven test approach Cross-browser testing support Integration with SauceLabs Parallel test execution HTML report generation Environment-specific configurations
Common Test Flows
• Vehicle lookup validation • Shop selection • Damage assessment • Appointment scheduling • Coverage verification • Payment processing
Contributing
- Follow the established page object pattern
- Add proper test documentation
- Include appropriate test tags
- Ensure tests are isolated and repeatable
Environment Variables
BASE_URL= CCIS_API_URL= ADMIN_SERVICE_API_URL= SAUCE_USERNAME= SAUCE_ACCESS_KEY=
CI/CD Integration
The project uses Azure Pipelines for continuous integration with configurations defined in azure-pipelines.yml.