Protractor: End to End testing

Protractor Tutorials on End-to-End testing on AngularJS and Non-AngularJS websites

Online Self-paced Course  $250 Enroll>>

About The Course

"Protractor" is an end to end testing framework specially designed to perform automation testing on AngularJS/Non-AngularJS based web applications. Protractor API works as a wrapper over the most powerful Selenium WebDriver API and is built on top of WebDriverJS that uses native events and browser specific drivers to interact with web based application as a normal user would do.

 Pre-requirment for learning protractor:

  •    Knowledge of testing concepts
  •    Basic Knowledge of Selenium concepts
  •    Knowledge of Javascript


Course Curriculum:

Section 1: Introduction to Protractor

  • Introduction to Protractor E2E Testing Course
  • Overview of E2E testing
  • What & Why Protractor?
  • Architecture of Protractor

Section 2: Basic installation

  • Pre-requisites for "Protractor"
  • Installing Java JDK and NodeJS
  • Installing Protractor
  • Resolving Python and Visual studio installation error

Section 3: Protractor basics

  • Basic Overview of jasmine
  • Writing Script for Angular App
  • Writing Script for Non-Angular App
  • Basic Overview of Protractor "configuration.js"
  • Running first protractor test script

Section 4: Setuping Protractor with Webstorm

  • Intriduction to Webstorm
  • Why Webstorm?
  • Setuping protractor with webstorm

Section 5: Jasmine 

  • Unit testing Overview
  • Different unit testing framework
  • Jasmine features
  • Describe and it block
  • Skipping and Focus test scripts in jasmine
  • Expect toBe and not toBe
  • Jasmine matchers:toEqual,not toEqual and toMatch
  • Setup and Tear down methods in jasmine

Section 6: Jasmine Advance

  • Writing Custom matchers with jasmine
  • Async Testing with jasmine

Section 7: Locator strategy in Protractor

  • Different way of element intraction in protractor
  • WebElement: Element.all vs Element locators
  • WebElement Vs Element finder locators
  • Protractor locators inherited from Selenium
  • Additional Protractor locators

Section 8: Angular Locators in Detail 

  • Working with "ng-model"
  • Working with "ng-binding"
  • Working with "ng-repeater"
  • Working with  "partialButtonText" and "buttonText"
  • Final thoughts on Protractor "locators"

Section 9: WebElement methods

  • Basic overview of common methods
  • isPresent()
  • isElementPresent()
  • isDisplayed()
  • isEnabled()
  • Filter function
  • Map function
  • Reduce function

Section 10: Page Object Model(POM)

  • Challanges With protractor
  • Overview of Page Object Model
  • Advantage of Page Object Model
  • Protractor Supports for Page Object Model
  • Writing Protractor tests with Page Object Model

Section 11: Configuration.js

  • Configuration.js overview
  • Running scripts on multiple browser
  • Multi Instance and Multi browser execution
  • Global params in configuration file 

Section 12: Working with Promises in Java Script

  • Basic Overview of Asynchronous and Synchronous Javascript beheviour
  • Different way of working with Promises
  • Sample protractor script with Promises

Section 13: Generating HTML Reoprts

  • Why HTML Reports?
  • Generating HTML Report Using Jasmine reporters
  • Configuring different reporting options
  • Generating Allure report in Protractor
  • Generating HTML report from allure reports

Section 14: Log4js 

  • Introduction to log4js
  • Installing log4js
  • Configuring appenders for log4js
  • Using log4js in protractor test scripts

Section 15: Data driven testing in Protractor

  • Basic overview of JSON file
  • Advantage of JSON over XML and Excel in protractor
  • Reading Test data from JSON file
  • Update JSON test data files 
  • Protractor scripts with JSON Testdata

Section 16: Utiliies/Helpers

  • Need of helpers
  • Implicit wait/Explicit wait
  • Working with frames
  • Working with multiple browser windows
  • Working with Pop-ups
  • Working with date in javascripts
  • Other utility functions

Section 17: Grunt Integration with Protractor

  • Basic Over view of Task runners
  • Installing grunt and other depandencies
  • Configuring grunt for protractor
  • Registering grunt task for protractor
  • Global Prams in grunt.js 
  • Running protractor scripts with grunt.js

Section 18: Gulp Integration with Protractor

  • Installing gulp and other depandencies
  • Configuring gulp for protractor
  • Registering gulp task for protractor
  • Global Prams in gulp.js 
  • Running protractor scripts with gulp.js

Section 19: Package.json

  • Intriduction and Use of package.json
  • Different section of package.json
  • Managing npm depandencies in package.json
  • Scripts section in package.json

Section 20: SaucLab integration with Protractor

  • Intriduction to Sauclab
  • How to use Sauclab?
  • Configuring Sauclab with Protractor
  • Running first Protractor script in Sauclab

Section 21: Debug your protractor specs with Webstorms

  • Why debugging required?
  • Debugging protractor scripts with webstorm

No Any FAQ's.



Getting Started with Protractor: End to End testing




Drop Us a Query: