Overview
Protractor is an end-to-end automation test framework for Angular and AngularJS applications. It is used to run tests against web applications, interacting with them as a user would: by filling out forms, clicking on elements, and navigating from page to page.
In this instructor-led, live training, participants learn first-hand how to write Protractor tests against a sample Angular web application in a live lab environment.
By the end of this course, participants will have gained proficiency in Protractor and be comfortable
- creating their own automation tests for Angular applications.
- integrating Protractor into their existing development workflow.
- ensuring that their tests are clean and maintainable.
- running Protractor with or without Selenium to drive browser behavior.
Format of the course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
Requirements
- Experience working with Javascript and node.js.
- Basic understanding of Angular web applications.
- Basic understanding of automation testing.
Audience
- Web developers
- Automation test engineers
Course Outline
Introduction
- Why use Protractor?
Setup and Installation
How Protractor Works
Overview of Protractor Syntax
Understanding Promises and Promise-Based Tests
A Sample Web Application
Setting up Your SUT (System Under Test)
Writing Your First Test
Unit Testing Javascript with Jasmin or Mocha
Driving the Browser with Selenium WebDriver, Chai WebDriver, directConnect
Locating and Interacting with Web Elements
Accessing Web Elements through Page Objects
Executing the Test
Generating Test Reports
Debugging Protractor Tests
Making Your Test Code Maintainable and Easy to Read
Mocking HTTP Requests
Integrating Cucumber with Protractor for BDD (Behavior Driven Development)
Scaling Tests over Multiple Browsers and Systems with Selenium Grid
Integrating Protractor into Your Development Workflow (Git, Jenkins, etc.)
Summary and Conclusion