DigitalConsumer.ISS/playwright-tests/tests/README.md
chase-safelite 5d3ab0ef59
Added playwright tests into repo (#923)
* Initial import of playwright tests

* Pipeline changes for automated tests

* Modified pipeline for testing

* Attempt #2

* Attempt #3

* Added missing paren

* Removed debug stuff from pipeline

* Changes from playwright repo

* Changed pipeline for debugging

* Fix for ServiceLocationPage playwright locators

* Change pipeline to run with TEST APIs

* Moved more of Siraj's changes to this repo

* Changed where updating env occurs

* Changed location of env update again

* Escaped double quotes

* Added visible report in Azure

* Moved changes into main pipeline

* Made it so dotenv only runs config in local
2025-02-14 09:54:11 -05:00

101 lines
2.6 KiB
Markdown

# 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:
1. Vehicle Not Found Tests (Scenario 10)
2. Do Not See Shop Tests (Scenario 11)
3. Unique Glass Tests (Scenario 12)
4. Replace Tests (Scenario 13)
5. Repair Mobile Tests (Scenario 14)
6. Replace Parts Questions Dropoff Tests (Scenario 15)
7. 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
1. Follow the established page object pattern
2. Add proper test documentation
3. Include appropriate test tags
4. 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.