Efficient End-to-End Testing with Cypress.io
- When?
- 9:00 - 17:00, Wednesday, 2nd of October
- Where?
- DevPlant, 9 Gh. Lazar Street, Timisoara
- What’s included?
- Lunch, snacks, coffee and beverages
- Spots available
- 24
Workshop details
This workshop teaches you how to test a modern web application using the Cypress.io end-to-end test runner. The application we are going to test uses the Vue.js framework, with Vuex data management and REST API calls, but the testing will be applicable to any modern web app, regardless of the technology it uses.
Knowledge of web development using JavaScript is required. Some basic Node.js skills are required as well.
Part 1: The Basics
- How to install and run Cypress
- How Cypress scaffolds files
- Writing and running a basic test
- Setting up video recording and screenshots on failure
- Selector Playground
- Testing XHR requests
- Using data fixtures in your tests
Part 2: Core Concepts
- Configuring Cypress via CLI, env, config files
- Retry-ability and custom assertions
- Writing custom commands
- Using custom Webpack or Browserify preprocessor
- Page Objects vs App Actions
- Testing individual Vue / React / X components
- Accessing OS via `cy.task`
- When not to use Cypress
Part 3: Testing Strategy
- Using custom test reporters
- Running Cypress tests on CI
- Recording Cypress tests on the dashboard
- Testing in parallel
- Setting up data before the test
- Cypress module API
- Unit tests vs E2E tests
- Code coverage from E2E tests
- Function + Visual testing
About Gleb
Gleb Bahmutov is a JavaScript ninja, image processing expert and software quality fanatic. During the day Gleb is making the web a better place as VP of Engineering at Cypress.io.
At night he is fighting software bugs and blogs about it at glebbahmutov.com/blog. Microsoft MVP for Open Source Software, you can follow him and his work @bahmutov and find the slides from conference presentations at slides.com/bahmutov.
Note: The workshop is not included in the conference ticket and requires a separate booking. If you have any questions, drop us a line at info@revojs.ro.