Unit Integration Testing (UIT) had been a challenge because there was no tool that could help in XHR programming and unit integration validations in an efficient way until Cypress arrived. Cypress started releasing versions in 2015 and became popular in 2018 with version 2.0.0.
This book explores Cypress scripts that help implement ‘shift left testing’, which is a dream come true for many software testers. Shift left occurs in the majority of testing projects, but could not be implemented fully because tools were unavailable and knowledge was lacking about the possibilities of testing early in the life cycle. Shift left is a key testing strategy to help testing teams focus less on defect identifications and more on developing practices to prevent defects.
Cypress scripts can help front-end developers and quality engineers to work together to find defects soon after web components are built. These components can be tested immediately after they are built with Cypress Test Driven Development (TDD) scripts. Thus, defects can be fixed straight away during the development stage. Testing teams do not have to worry about finding these same defects in a later development stage because Cypress tests keep verifying components in the later stages. Defect fixing has become much cheaper with Cypress than when other tools are used. The book also covers Behaviour Driven Development (BDD)-based Gherkin scripts and the Cypress Cucumber preprocessor, which can improve test scenario coverage.
Automated Software Testing with Cypress is written to fulfil the BDD and TDD needs of testing teams. Two distinct open source repositories are provided in Github to help start running Cypress tests in no time!
Table of Contents
1. Visual Regression. 2. Web Accessibility Testing. 3. Running Cypress Tests in Docker. 4. Test Reports. 5. Cypress Tests in Jenkins. 6. Behaviour Driven Developen (BDD)-based Feature File Writing Techniques using Cypress.io and Cucumber. 7. Differences Between Selenium and Cypress.io. 8. Cypress Cucumber Preprocessor Errors. 9. Device Compatibility Testing Using Cypress.io. 10. Disabled Object Verification Through Force: True. 11. Upload File Using Cypress.io. 12. Conditional Tests: A Comparison Between Selenium and Cypress.io. 13. Testing Dropdowns Using Cypress.io. 14. BeforeEach and AfterEach Hooks. 15. Generic Test Automation Architecture of Cypress.io. 16. Cypress-based API Testing. 17. BrowserStack-based Cypress Test Execution. 18. Capture/Playback Approach of Test Automation. 19. Test Applications with Slow Speed Using Cypress.io and URL Throttler. 20. DAST with Cypress.io and BurpSuite. 21. Click Function Using Cypress.io. 22. Adjusting Default Timeouts or Wait Times in Cypress.json. 23. Double Click Function Using Cypress.io. 24. Cypress Retry on Failed Tests. 25. Mouse Events Using Cypress.io. 26. Checkboxes Verification Using Cypress.io.
Narayan Palani is quality engineering lead for a major financial institution based in London. He has authored four books on software testing and holds multiple professional certifications as well as a master’s degrees in software engineering and business administration.