Cypress -Modern Automation Testing From Scratch + Framework

Course Price

Rs 6k or $160(For International members)

Course length

25-30 hours Weekend batches available

Buy Course
Cypress -Modern Automation Testing From Scratch + Framework

Instructor

Vinayak Titti

The trainer is having 10+ Years of industry experience and 3+ years experience on cypress test automation and training.

Extensive international experience having worked in the UK and Asia (Malaysia & India) in a wide variety of projects (BFSI), FinTech, CRM, CMS, Automotive, WordPress, e-wallets & Real-Estate industry using manual & automation tools.

Profile Summary:
* Overall 10+ years experience and 7+ years work experience as Test Manager, Test Lead and Test Architect.

* Hands-on experience in both manual & automation testing on Client-Server, Web-based and Mobile applications [Native, React-Native, Hybrid & Mobile Web].

* Experience working in automation tools such as Selenium WebDriver with Java, JavaScript, Cucumber, Appium & XCUITest for mobile & modern Javascript test frameworks Protractor, NightwatchJS, and Cypress.

* Expert knowledge in Software Development Life Cycle (SDLC) and Software Test Life Cycle (STLC).
Good knowledge of and experience in Agile Methodology, Water-Fall Model, and V-Model.

* Experience in both Android & iOS platforms (Native, Hybrid & React-Native apps).

* Experience in testing CRM and CMS environment applications such as Drupal, Django, and WordPress.

* Experience in AI Testing, Visual-UI Testing, image recognition, and watermark capture.

* Experience in MongoDB integration test & AWS - DynamoDB, Lambda functions & step functions.

* Experience in developing automation scripts and creating frameworks such as Keyword-Driven, Data-Driven, Hybrid Driven, and Behaviour Driven Development.

* Hands-on experience in penetration testing using BURP-SUITE & OWASP ZAP plugin integration with Jenkins for continuous security testing.

About the course

Description:
Cypress - The most buzzing word in automation world which is expected to play a key role in future for its fast, easy and reliable testing for anything that runs in a browser.

Because of its Architectural design, Cypress comes with out of box capabilities to bring Stable Automation results for all Modern Web Apps.

It also have the ability to perform Integration testing by mocking incoming network responses.

For Test Debugging, Cypress takes Screenshot by default for every test step and generate execution Mp4 video after every test run


What Will You Get ?
1. By end of the course, You will be able to build fast and reliable Automation tests for any Web Application using Cypress

2. Understand how to perform Integration testing with Cypress

3. Practical knowledge in designing Cypress Automation framework from scratch

4. Learn XHR/API testing using Cypress for building smart Automation tests with mock responses

5. Complete understanding of Cypress Components for generating test execution Videos ,Screenshots & Reporting.

Javascript Topics:
1. Variables, Constants
2. Arrays
3. Loops
4. Conditions
5. ES6 module
6. Promises
7. CallbackFn
8. async/await
9. Classes
10. Enum
11. Collections etc.,

Locator Strategy:
1. How to handle DOM objects
2. How to create XPath and CSS custom locators and
3. chrome extensions to generate locators. Eg: Selectorshub and truepath

VS Code IDE:
1. VS Code usage
2. VS code plugins
3. VS Code shortcuts

Git Source Control Versioning:
1. Git repos
2. Git commits & merge
3, Git pull & push
4. Git commands
5. SourceTree tool usage
6. Git branching strategy

Cypress Course Outline:
1. Introduction, Architecture, Features, Pros & Cons

2. Cypress Installation & project Setup

3. Introduction to Cypress Test Runner and command line features

4. Getting started with Cypress Test Automation

5. Deep diving into Cypress Commands and its Asynchronous Nature

6. Handling Web UI Controls using Cypress
a. Date Picker handling
b. Pagination handling
c. ShadowDOM handling
d. Write and Read file
e. Slider’s handling
f. WebTable handling
g. Tabs & Window handling
h. Radio buttons/Checkboxes handling
i. Dropdown handling
j. DragNDrop handling
k. File upload & download handling etc.,


7. Advance Automation to handling Alerts, popups, Child Windows using Cypress-Jquery

8. Understand limitations of Frames & Child windows in Cypress

9. Cypress Framework Part 1- Understanding Fixtures and Custom commands

10. Cypress Framework Part 2- Page object Design & Test Parameterization

11. Cypress Framework Part 3- Configuration properties & Environmental variables

12. Cypress Framework Part 4- Dashboard feature with Video recording & Screenshots

13. Cypress Framework Part 5- Building npm Scripts and Integration to Jenkins

14. API testing with Cypress
a. GET/POST/PUT/PATCH/DELETE methods
b. Chaining API calls
c. Passing payloads using fixtures

15. BDD - Cucumber framework implementation.
• Get started
o Installation
o Cypress Configuration
o Configuration
• How to organize the tests
o Single feature files
o Bundled features files
o Step definitions
 Step definitions creation
 Reusable step definitions
• How to write tests
o Cucumber Expressions
o Given/When/Then functions
o Data table parameters
o Custom Parameter Type Resolves
o Before and After hooks
o Background section
o Sharing context
o Smart tagging
• How to run the tests
o Running tagged tests
o Ignoring specific scenarios using tags when executing test runner
o Output


16. Cypress Studio usage

17. Mocha framework implementation
Mocha is a feature-rich JavaScript test framework running on Node.js and in the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases.

• Getting Started
• Run Cycle Overview
• Detects Multiple Calls to done()
• Assertions
• Asynchronous Code
• Synchronous Code
• Arrow Functions
• Hooks
• Pending Tests
• Exclusive Tests
• Inclusive Tests
• Retry Tests
• Dynamically Generating Tests
• Timeouts


18. Cypress limitations, trade-offs, and workarounds

19. Assertions
a. Why do we need Assertions?
b. Chai Assertions & Cypress Examples
c. Adding Assertions to our Existing Tests
d. Cypress Contains

20. Cross-browser testing and browser launchoptions usage
a. Headless Browser execution
b. Non-Headless Browser execution

21. Cypress logging and test-runner debugging

22. Mouse Events
a. Scroll into View
b. Drag & Drop
c. Double Click
d. Right click Assertions
e. Trigger events

22. Working with Cypress Plugins
a. Cypress Official Plugins
b. Cypress 3rd party plugins

23. Cypress Dashboard usage and analytics

24. Configuring & Handling Timeouts
a. URL Timeouts
b. Explicit Timeouts
c. Assertion Timeouts
d. Wait

24. Test Data handling using fixtures
a. JSON file
b. Excel file
c. CSV file
d. images and txt file

25. Environment & Global Variables
a. Prerequisites
b. Environment Variables
c. Setting up a Base URL
d. Default config settings

26. Reporting
a. Mochawesome Reporter
b. Mochawesome - Merging Reports GitHub
c. Allure reports
d. Cucumber HTML reports


Advance Training Topics:
1. Gitlab CI/CD integration

2. Cloud testing using Browserstack, SauceLabs

3. Database testing using MySQL connector

4. Gmail Email API integration

5. Configuring 4 different design patterns with Page Object Model

6. Stubs and XHR network capture controls
a. Mocking & Stubbing network calls

7. Cypress using Typescript integration

8. Github Actions/Jenkins/Circle CI pipeline integration

9. Docker images usage

10. Component testing using Cypress

11. GraphQL queries

12. Social logins usage eg: Facebook/LinkedIn

13. Performance testing using Cypress

14. Session Management using cy.session()

15. Testing PDF files using Cypress

16. JQuery commands & locators

17. Cypress Dashboard Analytics

18. Visual testing using Cypress

19. Cy.origin() usage

20. Cookies Handling


Other Deliverables:
1. Hands-on-lab
2. Cypress-Cookbook documentation
3. Real-time examples
4. Live projects practice
5. Interview questions
6. Javascript & Cypress materials