Skip to content

This repository documents my ongoing learning in test automation — from UI testing with Cypress and Selenium to performance testing with Artillery. Ideal for QA portfolio expansion and practical experimentation.

Notifications You must be signed in to change notification settings

ypodonin/qa-automation-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧪 QA Automation Portfolio: Cypress, Selenium & Artillery

Cypress Selenium Artillery JavaScript License

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.


📁 Folder Structure

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.


🧪 Cypress UI Automation

Automated tests for qa.ypodonin.space built with Cypress, Mocha, and Chai.

✅ Highlights

  • 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

🔄 Test Approaches

  • basic/comprehensive-portfolio-tests.cy.js: simple functional tests
  • pom/pom-comprehensive-tests.cy.js: page-object model implementation

🔧 Useful Commands

npm run test           # Headless test run
npm run test:open      # Open Cypress GUI
npm run test:report    # Merge reports and generate HTML report

🐍 Selenium UI Test (Python)

Basic Selenium test for opening and validating qa.ypodonin.space using Python:

  • File: selenium-learning/basic_test_portfolio.py
  • Virtual environment: selenium-learning/venv/

To run:

source venv/bin/activate  # or your OS equivalent
python basic_test_portfolio.py

🚀 Artillery Performance Testing (Training Example)

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.

To run:

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

About

This repository documents my ongoing learning in test automation — from UI testing with Cypress and Selenium to performance testing with Artillery. Ideal for QA portfolio expansion and practical experimentation.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published