Cypress Training from Edgewords

Cypress is a fantastic new web testing tool. It is becoming incredibly popular, and not without reason, it provides benefits of:Cypress Logo
  • Fast deployment, with everything you need – no having to install many other dependencies (includes Mocha, Chai, JQuery, Electron Browser)
  • Very fast test execution – Cypress executes test within the web browser, unlike other tools that go through a middle layer browser driver
  • Easy to use, with tools to run tests (Test Runner), to record actions, and also to locate web elements
  • Easy integration into Continuous Integration Tools, it even includes a GitHub action to execute tests in the cloud through GitHub!
  • Multi-platform, Multi-browser
  • As well as GUI testing, it includes RESTful API Testing, and API Mocking.
  • Cypress provides a hosted Dashboard in the cloud to share Test Execution Results!

Cypress is written in JavaScript and runs on NodeJS. It is opensource and free! The Cypress team also provide an amazing dashboard service so all of your test run results can be viewed securely in the cloud by anyone that needs access to them.

Our Training Course

Designed for newcomers to Cypress, our course covers everything you need to know to become proficient at writing test cases in Cypress.

The course is online, live, instructor-led, and incorporates a comprehensive e-workbook for the course. In between each online session we give you practical exercises for you to have a go at. The sessions are recorded, so you can review them later, and we also provide resources through GitHub projects.

Course Delivery and Duration

The course is delivered online, instructor-led (VILT) over 4 days, with each day being approximately 3.5 hours training. It can also be delivered on-site, classroom-based and this is over 3 full days.

Platform

We use GoToTraining for delivery, which can be accessed from a web browser. It provides full audio (VoIP, or Phone), desktop sharing, polls, quizzes, recording etc. We can also Microsoft Teams if required. Cypress can be run on Windows, Linux or Mac, and the course relates to all three platforms.

Pre-requisites

None, we do have an optional JavaScript primer chapter if you are new to JavaScript. We can also email you the setup instructions before the course so you can setup Cypress in readiness.

Course Overview

Introduction
  • What is Cypress
  • Pros & Cons of Cypress
  • Supported Browsers
  • Help References
JavaScript (Optional)
  • History & Terms
  • Executing JavaScript in the Console
  • Syntax Basics
  • Objects
  • String Functions
  • Functions
  • Loops
Visual Studio Code IDE
  • IDE Requirements
  • NodeJS
  • Installing & configuring VS Code
  • First Script
Cypress Setup
  • json & npm
  • Installing Cypress
  • Cypress VS Code Extensions
  • The Test Runner
  • Debugging
  • Cypress Folder Structure (Scaffolding)
Locators & Actions
  • Chrome Development Tools
  • Using ID, Class & CSS
  • Selocity
  • The Test Runner Locator Playground
  • get() & .contains()
  • Chaining Locators
  • Using .within()
  • Common Actions
  • Action Options
  • Writing to the Log & Screenshots
CSS
  • Introduction to HTML & Web Page Anatomy
  • CSS Notation
Synchronisation
  • Waiting for Elements to appear
  • Local Timeouts
  • Test Spec Timeout
  • Global Timeout Config
  • CLI Parameters for Timeouts
  • Wait
Mocha
  • What is Mocha?
  • Spec Structure
  • Enabling/Disabling Tests
  • Hooks
  • Mocha Snippets for VS Code
Asserts
  • Chai Styles
  • Implicit Asserts
  • Regular Expressions
  • Explicit Asserts
  • When NOT to Assert
Custom Commands & Function Libraries
  • Adding Cypress Commands
  • Function Libraries
Fixtures
  • Using Hooks to load Fixture Test Data
  • Environment Variables
Alerts
  • Handling Alerts
Command Line Interface (CLI)
  • Using npx & npm aliases
  • CLI parameters
Dashboard
  • Setting up & using the Dashboard
Continuous Integration
  • Setting up pipelines in Azure DevOps (ADO)
  • JUnit reports
Extras (Advanced Reference)
  • Data-Driven Testing
  • Browser Navigation
  • Viewport
  • Window Objects
  • URL Information
  • Invoking JavaScript functions from the page
  • Cookies
  • Handling Web Tables
  • Page Object Model (POM)
  • API Testing
  • GitHub Actions
Recorder
  • Using the new Recording feature in Cypress
Course Overview

How to Book

Please either phone +44 (0)333 939 8884, or email tom.millichamp@edgewords.co.uk

Private courses can be arranged at a date & time to suit, and are for up to 10 delegates.