Booking options
£140.99
£140.99
On-Demand course
21 hours 9 minutes
All levels
This interactive course will help you gain a solid understanding of Protractor. You will get hands-on experience in designing Protractor frameworks for automating Angular applications. You will also understand the role of modern technologies, such as JavaScript, TypeScript, Node.js, and Jasmine, in designing the frameworks.
With a sudden increase in demand for JavaScript frameworks and Angular applications, Protractor is turning out to be one of the hottest automation testing tools available in the market. This course will help you to get started with Protractor and will show you how easy it is to automate Angular applications. The course starts with an introduction to Protractor, explaining the basics and the installation process. Next, you will learn the JavaScript fundamentals and understand how to solve JavaScript asynchronous promises with Protractor. You will then learn the concepts of Protractor tests and core APIs and learn how to handle Angular User Interface (UI) elements, frames, and synchronization with Protractor. Moving along, you will learn the basics of TypeScript and dive into building the TypeScript-Cucumber framework using Protractor. Next, you will learn page object mechanism in the JavaScript framework and get an in-depth understanding of package.json files and npm commands. Later, you will learn to perform data-driven testing using the Jasmine framework and learn how to generate Protractor test reports for clients. Finally, you will learn the techniques to integrate the Protractor framework with the Continuous Integration (CI) Jenkins tool and get an overview of GitHub. By the end of this course, you will have complete knowledge of Protractor API needed to automate Angular and non-Angular applications. The code files are available here: https://github.com/packtpublishing/learn-protractor-angular-automation-tool-from-scratch
Learn about Protractor APIs
Understand different locator strategies available in Protractor
Running Protractor tests on Firefox and Internet Explorer
Understand the ProtractorÂ?Cucumber configuration file
Optimize Protractor tests for developing frameworks
Design the Protractor framework using Jasmine unit testing techniques
This course is designed for anyone who wants to design the Protractor frameworks for automating Angular applications test cases. No prior experience or skills are needed to get started with this course.
With the help of interesting activities and step-by-step explanation, this course develops your Protractor skills needed to automate Angular applications.
Gain the ability to test Angular and Non-Angular applications with Protractor * Get an in-depth knowledge of JavaScript with asynchronous promise concepts * Understand Node.js principles and JSON packages in-depth for Continuous Integration (CI)
https://github.com/packtpublishing/learn-protractor-angular-automation-tool-from-scratch
Rahul Shetty is the founder and trainer at Rahul Shetty Academy. He is a passionate software tester and has 13 years of rich experience in the IT industry. He has completed more than 300 offline training batches. Rahul has extensive knowledge in web automation testing, mobile automation testing, and API automation testing. He has also worked with various CMM-level organizations and managed the set-up of QA processes for projects.
1. Introduction
1. Understand the Importance of Protractor This video explains the importance of Protractor. |
2. Difference between JavaScript and TypeScript This video illustrates the differences between JavaScript and TypeScript. |
3. Why Node.js? and Installing Node This video explains the need for Node.js and shows how to install Node. |
4. Installing Protractor with the WebDriver Plug-in This video demonstrates how to install Protractor with the WebDriver plug-in. |
2. Getting Started with Protractor
1. Installing the JavaScript Eclipse Tool for Protractor Tests This video demonstrates how to install the JavaScript Eclipse tool for Protractor tests. |
2. Introduction to Jasmine and its Terminologies This video provides an introduction to Jasmine and its terminologies. |
3. Importance of the Configuration File in the Protractor Framework This video explains the importance of the configuration file in the Protractor framework. |
4. Creating a Protractor TestRunner File to Run the Scripts This video demonstrates how to create a Protractor TestRunner file to run the scripts. |
5. Installing the Angular JavaScript Plug-in and Converting to Intern Project This video explains how to install the Angular JavaScript plug-in and convert to intern project. |
3. Setting up a Protractor Test in Visual Studio and WebStorm
1. Installing Visual Studio and Running a Protractor Test This video demonstrates how to install Visual Studio and run a Protractor test. |
2. Installing WebStorm and Running a Protractor Test This video demonstrates how to install WebStorm and run a Protractor Test. |
4. Deeper Understanding of Protractor Promises and its Working Mechanism
1. JavaScript Asynchronous and its Problem with Protractor This video explains the concept of asynchronous JavaScript and highlights its problem with Protractor. |
2. Importance of Promise and How it Solves Asynchronous Issues? This video explains the importance of promise and how it solves asynchronous issues. |
3. Understanding How Protractor In-built Takes Care of Promise This video explains how Protractor in-built takes care of promise. |
5. JavaScript Basics
1. Basics of JavaScript This video explains the basics of JavaScript. |
2. JavaScript Conditional Statements - If Else This video explains if else conditional statements. |
3. JavaScript Loops - For with Example This video demonstrates how to use for loops statements with an example. |
4. JavaScript While and Do While - Example This video explains how to use while and do while statements with an example. |
5. Understanding the Use of JavaScript Functions This video explains how to use JavaScript functions. |
6. Importance of JavaScript Arrays with Example This video explains the importance of JavaScript arrays with an example. |
7. JavaScript String Functions with Examples This video explains String functions with examples. |
6. Getting Started with Protractor Tests
1. Understanding Global Variables of Protractor This video explains the global variables of Protractor in detail. |
2. Using Protractor Locators - Part 1 This is the first part of the two-part video that explains how to use Protractor locators. |
3. Using of Protractor Locators - Part 2 This is the second part of the two-part video that explains how to use Protractor locators. |
4. Jasmine Assertions to Validate Protractor Tests This video focuses on Jasmine assertions to validate Protractor tests. |
5. Running Protractor Tests on Firefox and Internet Explorer This video demonstrates how to run Protractor tests on Firefox and Internet Explorer. |
6. Running Protractor Tests on Non-Angular Sites This video demonstrates how to run Protractor tests on Non-Angular sites. |
7. Deep Dive into Protractor Core API
1. Web Applications to Practice Protractor Automation This video explains the concept of web applications to practice Protractor automation. |
2. Importance of Chain Locators with Example This video explains the importance of chain locators with an example. |
3. Chain Locators to Identify Child Elements with Example This video explains how to use chain locators to identify child elements with an example. |
4. Getting a List of Elements with the All Method in Protractor This video demonstrates how to get the list of elements with the all method in Protractor. |
5. Practice Exercises on All and Chain Locators This video presents a practice exercises on all and chain locators. |
6. Handling a List of Drop-down Options with Example This video explains how to handle a list of drop-down options with an example. |
8. Handling Mouse Actions, Windows, and Alerts with Protractor
1. Mouse Actions and its Importance in the Angular User Interface (UI) This video focuses on mouse actions and its importance in the Angular UI. |
2. Examples of Handling Auto-complete Drop-downs with Actions This video presents an example of handling auto-complete drop-downs with actions. |
3. Handling Child Windows with Protractor This video demonstrates how to handle child windows with Protractor. |
4. Examples on Validating Child Windows with the Switch Mechanism This video presents an example on validating child windows with the switch mechanism. |
5. Handling Java Alerts with Protractor This video demonstrates how to handle Java alerts with Protractor. |
9. Frames and Synchronization Practical Usage
1. What are Frames? What are the Methods to Handle them in Protractor? This video explains the concept of frames and how to handle them in Protractor. |
2. Handling Synchronization with Protractor This video demonstrates how to handle synchronization with Protractor. |
10. Real Time Project in Building Protractor Test
1. Demonstration - Project Walkthrough This video presents a walkthrough of the project. |
2. Submission of Forms with Various Protractor Locators This video explains how to submit forms with various Protractor locators. |
3. Validating Angular Error Messages with Example This video explains how to validate Angular error messages with an example. |
4. Handling Dynamic Sections with Protractor This video explains how to handle dynamic sections with Protractor. |
5. Practice Exercises on Selecting Items to Cart This video provides a practice exercise on selecting items to cart. |
6. String Functions to Extract Count of Cart Items This video demonstrates how to use string functions to extract count of cart items. |
11. TypeScript Basics
1. What is TypeScript? How it Differs from JavaScript? This video explains the concept of TypeScript and how it differs from JavaScript. |
2. Importance of Let and Const Keywords in TypeScript This video explains the importance of the "let" and "const" keywords in TypeScript. |
3. Using Types in TypeScript This video explains how to use types in TypeScript. |
4. Understanding Classes, Methods, and Objects in TypeScript This video explains the concept of classes, methods, and objects in TypeScript. |
5. Importance of a Constructor in TypeScript This video explains the importance of a constructor in TypeScript. |
6. Using Exports, Imports, and Functions in TypeScript This video demonstrates how to use exports, imports, and functions in TypeScript. |
7. Importance of Interfaces and Objects in Defining Contracts This video explains the importance of interfaces and objects while defining contracts. |
8. Using Pipes for Anonymous Functions This video demonstrates how to use pipes for anonymous functions. |
12. Part 1 - Protractor with TypeScript-Cucumber Framework
1. TypeScript-Cucumber Framework Learning Plan This video presents a learning plan for the Typescript-Cucumber framework. |
2. Understanding the package.json File and Getting the Dependencies of the Framework This video explains the package.json file in detail and demonstrates how to get the dependencies of the framework. |
3. Building a Basic Project Structure in Visual Studio Code This video demonstrates how to build a basic project structure in Visual Studio Code. |
4. Changes Needed for Protractor Configuration to be TypeScript Compatible This video explains the changes need for Protractor configuration to be TypeScript compatible. |
5. Importance of the tsconfig.json File and Compilation from ts to js This video explains the importance of the tsconfig.json file and shows how to compile from ts to js. |
6. Running the First Test Using Framework Configurations This video demonstrates how to run the first test using framework configurations. |
13. Part 2 - Protractor with the TypeScript-Cucumber Framework
1. Importance of Async/Await Synchronization in TypeScript and JavaScript ES7 This video explains the importance of async/await synchronization in TypeScript and JavaScript ES7. |
2. Importance of Page Object Mechanism in the Framework This video explains the importance of page object mechanism in the framework. |
3. Understanding Classes and Construction Definition for Defining Objects This video explains the concept of classes and construction for defining objects. |
4. Building Page Object Classes and Driving the Objects Externally into Tests This video explains how to build page object classes and drive the objects externally into tests. |
5. Understanding the Importance of Script Tag in the package.json File This video explains the importance of script tag in the package.json file. |
14. Part 3 - Protractor with the TypeScript-Cucumber Framework
1. Cucumber Introduction This video introduces you to Cucumber. |
2. Installing Cucumber-Protractor Dependencies This video demonstrates how to install Cucumber-Protractor dependencies. |
3. Understanding the Protractor-Cucumber Configuration File This video explains the Protractor-Cucumber configuration file. |
4. Creating a Feature File and Step Definition File Skeleton This video demonstrates how to create a feature file and step definition file skeleton. |
5. Implementing Step Definition File with Actual Automation Steps This video demonstrates how to implement a step definition file with actual automation steps. |
6. Implementing Time-outs and Building Common Step Definitions for Multiple Scenarios This video demonstrates how to implement time-outs and build common step definitions for multiple scenarios. |
7. Passing Test Data from Feature File to Step Definitions This video explains how to pass test data from feature file to step definitions. |
8. Implementing Parameterization in Cucumber Tests to Drive Tests with Multiple Sets This video explains how to implement parameterization in Cucumber tests to drive tests with multiple sets. |
9. Using Chai Assertions in the Cucumber Framework This video shows how to use Chai assertions in the Cucumber framework. |
15. Part 4 - Protractor with the TypeScript-Cucumber Framework
1. Implementing Tagging Mechanism to the Protractor-Cucumber Tests This video explains how to implement tagging mechanism to the Protractor-Cucumber tests. |
2. Using Cucumber Hooks to Run Setup and Tear Down Methods This video demonstrates how to use Cucumber hooks to run setup and tear down methods. |
3. Installing Reporting Dependencies to the Cucumber Framework This video explains how to install reporting dependencies to the Cucumber framework. |
4. Implementing Reporting in Cucumber with the onComplete Option in Configuration File This video demonstrates how to implement reporting in Cucumber. |
5. Capturing Screenshots on Test Failures with After Hook Implementation This video explains how to capture screenshots of test failures. |
16. Framework Part 1 - Understand the JavaScript Objects and Their Accessibility
1. Framework Learning Plan for JavaScript This video presents a framework learning plan for JavaScript. |
2. What are JavaScript Objects and its importance? This video explains JavaScript objects and their importance. |
3. Accessing Java Objects from another JavaScript File The video explains the how to access Java objects from another JavaScript file. |
17. Framework Part 2 - Page Object Mechanism to Drive the Objects
1. Page Object Mechanism for Protractor Tests This video explains the page object mechanism for Protractor tests. |
2. Driving the Page Objects with Setup and Tear Down Methods This video explains how to drive the page objects with setup and tear down methods. |
18. Framework Part 3 - package.json and Node Basics to Trigger Tests from Framework
1. onPrepare Functionality in Configuration File for Preloading the Data This video explains the onPrepare function to preload data. |
2. Understanding the Importance of the package.json File This video explains the importance of the package.json file. |
3. package.json Configuration Properties This video explains the configuration properties of the package.json file. |
4. Defining Scripts Configuration in package.json to Eliminate Eclipse TestRunner This video explains how to define scripts configuration in package.json to eliminate Eclipse TestRunner. |
5. npm Commands to Trigger Test Suites This video explains the various npm commands to trigger test suites. |
19. Framework Part 4 - Data-driven Testing with Jasmine Data Provider
1. Introduction to Data-driven Testing with Jasmine This video explains data-driven testing with Jasmine. |
2. Jasmine Data Provider Format in Defining the Data This video explains how to use the Jasmine Data Provider format in defining data. |
3. Eliminating Data Hardcoding in the Scripts with Jasmine Data Provider This video explains how to eliminate data hardcoding in scripts with Jasmine Data Provider. |
20. Framework Part 5 - Generating Client Reports and Tagging for Protractor Tests
1. Generating Excellent Client Reports for Protractor Tests This video explains how to generate excellent client reports for Protractor tests. |
2. Tagging Configuration to Control Test Scripts Execution This video explains how to tag configuration to control tests scripts execution. |
21. Framework Part 6 - Integrating Protractor Tests with the Jenkins Continuous Integration (CI) Tool
1. Introduction to Jenkins This video provides an introduction to Jenkins. |
2. Configuring Jenkins Job with Protractor Tests This video explains how to configure Jenkins job with Protractor tests. |
3. Scheduling Protractor Jenkin Job for Continuous Integration This video explains how to schedule Protractor Jenkin job for continuous integration. |
22. Understanding Version Control System in Git
1. Introduction to Git This video provides an introduction to Git. |
2. Importance of GitHub and its Uses This video explains the importance of GitHub and its uses. |
3. Creating Git Configuration and Repositories This video demonstrates how to create Git configuration and repositories. |
4. Pushing Code to a Remote Repository This video explains how to push code to a remote repository. |
5. Understanding Staging and Commit in Git This video explains the concept of staging and commit in Git. |
6. Adding Remote Repository and Pushing the Committed Code This video explains how to add remote repository and push the committed code. |
7. End-to-end Working Example on Git Commands - Part 1 This is the first part of the two-part video that presents an end-to-end working example on Git commands. |
8. End to End Working Example on Git Commands - Part 2 This is the second part of the two-part video that presents an end-to-end working example on Git commands. |
9. Importance of Branching in Git This video explains the importance of branching in Git. |
10. Resolving Merge Conflicts with Git This video explains how to resolve merge conflicts with Git. |