Loading

Our Courses

Software Testing Course


Module 1: Software & Testing Fundamentals

✅ What is Software
✅ What is Software Testing
✅ Why Software Testing
✅ The 7 Principles of Testing (ISTQB Core)
✅ Testing Myths vs Realities (7 Testing Commandments)
✅ Evaluation & Objectives of Testing
✅ Error, Defect, Failure

Module 2: SDLC & Testing Life Cycles

✅ Software Development Life Cycle (SDLC)
✅ SDLC Models: Waterfall, V-Model, Agile Basics
✅ Software Testing Life Cycle (STLC)
✅ Test Project Life Cycle (Phases and Activities)
✅ Entry and Exit Criteria (ISTQB Core)

Module 3: Static & Dynamic Testing

✅ Static Testing: Reviews, Walkthroughs, Inspections
✅ Dynamic Testing Methods
✅ Maintenance Testing (Post-release testing & regression)
✅ Test Environments & Setup
✅ Test Data Management

Module 4: Testing Techniques & Levels

✅ Testing Methods: Manual vs Automation
✅ Testing Techniques: Black-box
✅ Testing Techniques: White-box
✅ Testing Techniques: Grey-box
✅ Test Levels: Unit, Integration, System, Acceptance
✅ Code Coverage Basics (Statement, Decision)

Module 5: Test Design & Execution

✅ Test Requirements & Analysis
✅ Planning and Test Strategy
✅ Test Design: Test Cases, Test Scenarios
✅ Test Design: Traceability Matrix
✅ Test Execution, Reporting, and Status Tracking
✅ Risk-Based Testing Approach

Module 6: Defects & Bug Lifecycle

✅ Defect Logging & Bug Lifecycle
✅ Severity vs Priority
✅ Incident Management Process
✅ Reports and QA Metrics
✅ Test Closure Activities
✅ Release Support & Real-World Handoffs

Module 7: Tool Support for Testing

✅ Introduction to Test Tools
• Test Management (e.g. Jira, Zephyr)
• Defect Tracking (e.g. Jira, Bugzilla)
• Automation (e.g. Selenium, Cypress, Playwright)
• Performance & Coverage Tools (e.g. K6, JMeter, Istanbul)
✅ Factors in Tool Selection
✅ Challenges in Tool Implementation

Module 8: Agile & Real-World QA Practices

✅ Testing in Agile (Scrum QA Basics)
✅ Exploratory Testing
✅ CI/CD Concepts (Testing in Pipelines)
✅ Soft Skills for Testers: Communication & Collaboration
✅ Career in QA & ISTQB Certification Guidance

Outcome

✅ Covers ISTQB Foundation Level concepts
✅ Includes hands-on real-world alignment
✅ Builds a strong QA foundation for automation, BDD, Agile, and more
✅ Perfect for certification prep + career readiness

Playwright Automation


Topics

📘 Module 1: Introduction

1.1 What is Playwright

1.2 Playwright vs Selenium vs Cypress

1.3 Installation and Project Setup

1.4 Understanding the Folder Structure

1.5 Introduction to Playwright Test Runner

🧪 Module 2: Writing and Running Tests

2.1 Writing Your First Test

2.2 Running Tests via CLI

2.3 Filtering and Selecting Tests

2.4 Debugging and Inspecting Tests

2.5 Headed and Headless Modes

🎯 Module 3: Core Concepts

3.1 Selectors and Locators

3.2 Page Actions (Click, Fill, Type, etc.)

3.3 Assertions and Expectations

3.4 Auto-waiting and Timing

3.5 Working with Elements (Visibility, Text, Attributes)

🔄 Module 4: Advanced Interactions

4.1 Handling Forms and Inputs

4.2 Dropdowns, Checkboxes, and Radio Buttons

4.3 File Uploads and Downloads

4.4 Frames and iFrames

4.5 Handling Alerts and Popups

🌐 Module 5: Browser and Device Coverage

5.1 Running Tests in Chromium, Firefox, WebKit

5.2 Defining Projects for Multi-browser Testing

5.3 Device Emulation (Mobile, Tablet)

5.4 Parallel and Sharded Execution

🧱 Module 6: Test Organization and Reuse

6.1 Test Hooks (beforeEach, afterEach)
6.2 Environment Configuration and Variables
6.3 Page Object Model (POM) Design

🔌 Module 7: API Testing with Playwright

7.1 Using Playwright for API Calls
7.2 Validating API Responses
7.3 Combining API and UI Tests

📊 Module 8: Reporting and Debugging

8.1 Built-in Reporters and CLI Output
8.2 HTML and JUnit Reports
8.3 Screenshots and Videos
8.4 Playwright Tracing and Debug Mode

⚙️ Module 9: CI/CD Integration

9.1 Setting Up Playwright in GitHub Actions

🚀 Module 10: Best Practices and Real-World Scenarios

10.1 Test Strategy and Design
10.2 Handling Flaky Tests

10.3 Selector Strategy and Stability
10.4 Organizing Tests for Scale

Cypress Automation


1. Core Cypress Topics

✅ Introduction to Automation Testing
✅ What is Cypress
✅ Why Cypress? Benefits & Limitations
✅ TypeScript vs. JavaScript in Cypress
✅ Cypress Setup and Configuration
✅ Writing Your First Cypress Test
✅ Page Object Model (POM) in Cypress
✅ Managing Test Data with Fixtures
✅ Creating and Using Custom Commands
✅ API Testing with Cypress
✅ Best Practices for Cypress Automation
✅ Mini Project: End-to-End Automation with Cypress

2. BDD Cucumber with Cypress

✅ Introduction to BDD and Cucumber in Cypress
✅ Setting Up Cypress with Cucumber and TypeScript
✅ Understanding Gherkin Syntax for BDD Scenarios
✅ Mapping Gherkin Steps to Cypress Step Definitions
✅ Writing Your First BDD Test with Cypress + Cucumber
✅ Handling Test Data and Parameterization in BDD
✅ Assertions and Validations in BDD Tests
✅ Organizing BDD Tests: Folder Structure & Best Practices
✅ Advanced BDD: Reusing Steps
✅ Debugging and Running BDD Tests in CI/CD
 

3. TypeScript Topics for Cypress

✅ What is TypeScript?
✅ Setting up TypeScript in a Cypress project
✅ Type annotations (variables, arrays, objects)
✅ Functions with input and return types
✅ Optional and default parameters
✅ Interfaces and object typing
✅ Using TypeScript in Cypress tests
✅ Declaring types for custom commands
✅ Using types for fixtures and API responses
✅ Basic TypeScript troubleshooting tips in Cypress

4. Getting Started with Cypress

✅ Installing Cypress
✅ Project setup and folder structure
✅ Overview of Cypress Test Runner
✅ Writing Your First Test
✅ Using describe, it, and beforeEach
✅ Navigating to pages with cy.visit()
✅ Debugging basics

5. Element Selection & Assertions

✅ Selecting elements with cy.get, cy.contains
✅ Writing basic assertions with should and expect
✅ Best practices for selectors

6. Working with Web Elements

✅ Interacting with inputs, buttons, checkboxes, and dropdowns
✅ Using commands like click, type, check, select
✅ Handling dynamic content with should, then, and wait

7. Test Data with Fixtures

✅ Creating and using JSON fixture files
✅ Accessing fixture data in tests
✅ Parameterizing tests with different data sets

8. Custom Commands

✅ What are custom commands?
✅ Creating reusable logic with Cypress.Commands.add()
✅ Organizing custom commands for readability

9. API Testing with Cypress

✅ Using cy.request() for API calls
✅ Verifying API response codes and payloads
✅ Chaining API results with UI assertions

10. Best Practices for Cypress

✅ Organizing test files and folders
✅ Reusability and maintainability tips
✅ Naming conventions and test isolation

11. Mini Project / Hands-on Practice

✅ Automate a simple user flow (e.g., login, form submission)
✅ Review and feedback on test implementation
✅ Encourage code walkthroughs and peer review

Outcome

✅ Understand modern front-end automation using Cypress
✅ Learn to write fast, readable, and maintainable tests
✅ Automate UI and API scenarios with real project examples
✅ Use fixtures, custom commands, and assertions effectively
✅ Be confident in testing with Cypress best practices

BDD with Cypress + Cucumber


1. Introduction to BDD and Cucumber in Cypress

✅ What is BDD?
✅ Why use Cucumber with Cypress?
✅ Benefits of TypeScript in Cypress automation

2. Setting Up Cypress with Cucumber and TypeScript

✅ Install Cypress, Cucumber, and TypeScript via npm
✅ Configure cypress.config.ts and cypress-cucumber-preprocessor
✅ Setup TypeScript and Cucumber support files

3. Understanding Gherkin Syntax for BDD Scenarios

✅ Writing Feature files using Given-When-Then
✅ Best practices for clear and reusable scenarios

4. Mapping Gherkin Steps to Cypress Step Definitions

✅ Create step definition files (.ts) for scenarios
✅ Link steps to test logic using Cypress commands
✅ Organizing steps for modular and maintainable code

5. Writing Your First BDD Test with Cypress + Cucumber

✅ Example: Login feature (login.feature and step definitions)
✅ Running BDD tests in Cypress Test Runner

6. Handling Test Data and Parameterization in BDD

✅ Using Scenario Outline with Examples
✅ Parameterizing steps with dynamic data
✅ Fixtures and external data sources in BDD

7. Assertions and Validations in BDD Tests

✅ Using Cypress .should() and .expect() in steps
✅ Writing reusable custom assertions in TypeScript
✅ Validating page content, API responses, and more

8. Organizing BDD Tests: Folder Structure & Best Practices

✅ Recommended project layout for BDD + Cypress + TypeScript
✅ Naming conventions for features, steps, and test data
✅ Keeping feature files and step definitions clean and DRY

9. Debugging and Running BDD Tests in CI/CD

✅ Running Cucumber tests via CLI
✅ Debugging BDD tests with Cypress Test Runner
✅ Integrating Cypress BDD tests into GitHub Actions / CI pipelines

Outcome

✅ Understand modern front-end automation using Cypress and BDD
✅ Learn to write fast, readable, and maintainable tests
✅ Automate UI and API scenarios with real project examples
✅ Use fixtures, custom commands, and assertions effectively
✅ Be confident in testing with Cypress best practices

GitHub + Actions Setup Plan


1. Introduction to Git and GitHub for Test Automation

✅ What is Git and why it’s important for version control.
✅ Setting up a GitHub account and repository
✅ Basic Git commands: git init, git clone, git add, git commit, git push, git pull
✅ Branching basics: git branch, git checkout, git merge

2. Pushing Cypress Code to GitHub (Check-in & Checkout)

✅ Connecting local Cypress project to GitHub
✅ Checking in code (git push) and pulling updates (git pull)
✅ Handling merge conflicts in test projects
✅ Best practices for commit messages and version control

3. Understanding GitHub Actions (GHA) for Automation

✅ What is GitHub Actions?
✅ Why use GHA for Cypress and BDD automation?
✅ Exploring .github/workflows directory and YAML syntax
✅ Understanding triggers: push, pull_request, schedule, manual

4. Setting Up a GitHub Actions Workflow for Cypress BDD Tests

✅ Writing a basic GHA workflow file (e.g., main.yml)
✅ Installing Node.js, dependencies, and Cypress in the pipeline
✅ Running Cypress BDD tests automatically on push/PR
✅ Adding artifacts or test reports to the workflow

5. Enhancing GHA Workflows: Matrix Builds and Notifications

✅ Running tests on multiple environments (Node versions, browsers)
✅ Sending notifications (Slack, email) on test completion
✅ Monitoring GHA runs and debugging failures
 

k6 – Performance Testing

1. Basic k6 Training Topics

✅ Introduction to Performance Testing with k6
✅ What is k6 and why use it?
✅ Use cases: Load testing APIs, stress testing backends, etc.

2. Installing and Setting Up k6

✅ Installing via Homebrew (macOS), Chocolatey (Windows), or Docker
✅ Verifying installation
✅ Overview of k6 CLI

3. Writing Your First k6 Script

✅ Understanding Virtual Users (VUs) and Duration
✅ Making POST Requests and Working with Payloads
✅ Assertions and Checks in k6