This repository contains real-world QA automation examples for my portfolio site qa.ypodonin.space, including:
- ✅ Cypress (UI automation with JavaScript)
- ✅ Selenium (UI automation with Python)
- ✅ Artillery (Performance/load testing)
These projects demonstrate my growing skills in test automation and modern QA practices.
qa-automation-learning/
├── cypress-learning/
│ ├── cypress/
│ │ ├── e2e/
│ │ │ ├── basic/
│ │ │ │ └── comprehensive-portfolio-tests.cy.js
│ │ │ └── pom/
│ │ │ └── pom-comprehensive-tests.cy.js
│ │ ├── fixtures/
│ │ │ ├── example.json
│ │ │ ├── profile.json
│ │ │ └── users.json
│ │ ├── reports/
│ │ │ ├── comprehensive-portfolio-report.html
│ │ │ ├── pom-test-suite.html
│ │ │ ├── mochawesome_001.json
│ │ │ ├── mochawesome.json
│ │ │ └── assets/
│ │ ├── support/
│ │ │ ├── commands.js
│ │ │ ├── e2e.js
│ │ │ └── pageObjects/
│ │ │ ├── HomePage.js
│ │ │ ├── Footer.js
│ │ │ └── Navbar.js
│ │ ├── downloads/
│ │ └── screenshots/
│ ├── cypress.config.js
│ ├── package.json
│ ├── package-lock.json
│ └── gitignore
├── selenium-learning/
│ ├── basic_test_portfolio.py
│ └── venv/
├── artillery-learning/
│ ├── test.yml
│ ├── package.json
│ ├── package-lock.json
│ └── node_modules/
└── README.md
Each project folder is self-contained and includes all necessary configs and reports.
Automated tests for qa.ypodonin.space built with Cypress, Mocha, and Chai.
- Tests actual live portfolio flows
- Includes assertions for UI elements, routing, and content
- Generates visual HTML test reports (Mochawesome)
- Includes POM-based test suite for scalable structure
basic/comprehensive-portfolio-tests.cy.js
: simple functional testspom/pom-comprehensive-tests.cy.js
: page-object model implementation
npm run test # Headless test run
npm run test:open # Open Cypress GUI
npm run test:report # Merge reports and generate HTML report
Basic Selenium test for opening and validating qa.ypodonin.space using Python:
- File: selenium-learning/basic_test_portfolio.py
- Virtual environment: selenium-learning/venv/
source venv/bin/activate # or your OS equivalent
python basic_test_portfolio.py
This folder includes a training-oriented performance test configuration written in Artillery. It’s designed for educational purposes and simulates load/stress/spike tests on a sample API target (http://httpbin.org/
).
- Config file:
artillery-learning/test.yml
- Status: Training/test template (not used for production yet)
- Covers:
- Load testing
- Optional stress, spike, and scalability test templates
- Response time thresholds and success conditions
- Includes conditional checks for:
- max response time
- failure rate
- request throughput
🚧 You can adapt this template to real APIs by replacing the
target
value and adding custom flows.
cd artillery-learning
npm install
npx artillery run test.yml
💼 LinkedIn: linkedin.com/in/ypodonin 🔗 Portfolio: qa.ypodonin.space 💻 GitHub Repo: github.com/ypodonin/qa-automation-learning