Course Category: Software Testing
Course Duration: 4 Days
Hours: 28 Contact Hours

Select your country

Select your country to access the registration page

Malaysia

Register Now

Duration: 4 Day
Timing: 9 AM to 5 PM Malaysia Time

Philippines

Register Now

Duration: 4 Day
Timing: 9 AM to 5 PM Philippine Time

Singapore

Register Now

Duration: 4 Day
Timing: 9 AM to 5 PM Singapore Time

Australia

Register Now

Duration: 4 Day
Timing: 11 AM to 7 PM AEST

New Zealand

Register Now

Duration: 4 Day
Timing: 1 PM to 9 PM NZT

All Other Locations

Register Now

Duration: 4 Day
Timing: 9 AM to 5 PM Philippines/Singapore/Hong Kong Time

Course Overview

This workshop coaches’ participants to automate end-to-end web testing using Cypress. Cypress is widely used browser automation toolset to create tests for modern web applications, debug them, and automatically run them in your continuous integration builds.

Workshop commences with key concepts and then moves to Cypress usage as a tool for test automation for web applications. The course covers testing of static and dynamic website with html, http, ajax and more. Cypress api is covered in detail including tools like CLI and Cypress app with Cypress studio, libs like underscore, and Introduction to parallel testing and BDD tests. The workshop has extensive hands-on and demos and many learnings by doing.

Audience

Participants must be developers or software savvy testers who aspire to use Cypress to efficiently conduct their business.

Prerequisites

Participant must be able to code (beginner level) in Javascript/Typescript with corresponding standard library using VSCode.

Software Requirements

Latest Visual Studio Code
Node LTS with npm and yarn
Modern browser(s) like Chrome, Edge, Firefox

Introduction

  • Web and HTTP
  • Browsers and Servers
  • HTML, CSS, and JavaScript
  • Browser Developer Tools
  • Cookies, Cache, Headers
  • DOM Tree and Web flow
  • Ajax Vs Non-ajax
  • Brush up on language
    • Intro to Node and VSCode
    • Javascript vs Typescript
    • Key Classes and/or Methods for language
    • Asynchronous code
  • Debugging
  • Manual Testing
  • Test types.
  • Coded Tests and Benefits
  • Usage of Unit Testing Framework
  • AAAC structure
  • Assertions
  • Installation
  • Command Line
  • Hello, World!
  • Features
  • The Launchpad

Cypress

  • Architecture
  • Pros and Cons
  • Tool set and extensions
  • Configuration
  • First project and anatomy
  • Organize
  • Writing test
  • E2E vs Component tests
  • API by Examples
  • Running test
    • Headless and with UI
    • Specific browser(s)
    • Specific test(s)
    • Parallel
  • Locating Elements
    • Vs jQuery
    • Various ways
    • Filtering
    • Command chain.
    • Handing Promise
    • Handling lists
  • Getting state of DOM
    • Text, attributes, subtree
  • Assertions
    • Implicit vs explicit
    • Cypress way vs Mocha way
    • Timeout
    • And
    • Or
  • Manipulating Elements
  • Check and actions.
  • Handling mouse, keyboard

More

  • Variables and closures
  • Aliases
  • Context
  • Fixture
  • Debugging
    • Tracing
    • Using dev tools
    • Using debugger
  • Reporting
  • Matching Text using RegEx
  • Waiting
  • Forms and Tables
  • File upload and download.
  • Handing alerts
  • Windows, Frames, Dialogs
  • Browser Window
  • Viewports
  • Hooks
  • Events
  • Parameterization
  • Data Driven Tests
    • Hard-coded
    • Csv
    • Other
  • Keyword (Table) Driven Tests using aliases.
  • Guidelines for Skeleton framework
  • Page Objects Vs Actions
  • Test Cases Guidelines

More

  • Component tests
    • Config
  • Bundled libs
  • Custom assertions
  • Record and playback
  • More configuration
  • Retries
  • Handling server
  • Authentication
  • Handling Cookies
  • Session and local storage
  • Injecting javascript
  • Screenshots & video
  • Isolation
  • Mocking
    • Clock
    • Network requests
    • Spying
    • Stubing
  • Conditional testing
  • Visual testing
  • Api testing
  • Introduction to Cypress Cloud
  • CI/CD integration
  • Web security
  • Best practices
  • Extending Cypress
  • Vs Selenium
  • Intro to Cucumber and Gherkin

Exclusions

SDLC, Advanced protocol details, Advanced distributed testing, Advanced language