Prerequisite H/w –
- Windows or Macbook machine with atleast 4GB RAM and 20 GB HDD space
- Zoom Meeting / GotoMeeting/ Or Any other for attending live classes.
- Average-Good Internet Speed
Course Duration –
- Total 5-6 weeks Session.
- Timings – Mon-Fri in Mornings IST
- On Demand Weekend classes.
Who can take this course –
- Manual Testers with no programming background
- Beginners in Test Automation projects.
- Test Engineers comfortable on any Programming Language.
- Test Engineers who would like to Develop Test Automation Framework for their Projects.
- Managers who would like to develop ROBUST and RELIABLE Framework for long runs.
- Devops Candidates who would like to see How Continuous Integration Tools play role for End to End Framework Development.
- Test Leaders Proficient in developing Test Automation Frameworks
What can you expect after the course –
- Basic Scripting Using Python
- Understand Selenium Webdriver and Concepts
- Selenium IDE and its significance
- Various Element Locating Strategies
- Working with various UI elements (radio button, checkboxes, textboxes, alertboxes)
- Cross Browser Testing
- Robot Framework style of Developing Scripts
- Integration with Selenium Grid.
- Git – Source Code management
- Designing or Orchestration of Continuous Integration (CI) / Continuous Delivery (CD) using Jenkins
- Best Practises followed across Industry to Run Tests in Docker Containers
Help / Support –
- Daily Recorded Sessions for References
- Email Support
- Setup / Installation Documents
Chapter 1 : Setup Environment
- Setup and Installation of Python
- Download and configure Eclipse , Pydev
Chapter 2 : Basics of Python
- Simple Script with Hello World Program
- Working with different variable types
- Conditional Programming – if..else, Nested conditions if..elif..else
- Loop Programming – For loop, while loop
Chapter 3: Functions and Exception Handling
- Creating simple and parameterized functions
- Exception handling using try except and finally loop
Chapter 4: Data Structures
- Lists – Create , Get Value from List, Modify List, Remove Value from List, Looping on Lists, Nested Lists, Delete List. Operations using inbuilt methods
- Dictionaries – Create, Read key value pairs, modify , insert key: value pair, delete key, Nested Dictionaries. Operations using inbuilt methods
- Tuples – Create, Update value in Tuple, delete tuple
Chapter 5: Object Oriented Programming
- Classes – Instance of classes, Functions in the classes.
Chapter 6 : Python Modules
- Importing Packages
- Method Distributions
Chapter 7: Introduction to Selenium
- Selenium Architecture
- Setup Selenium python client libraries
Chapter 8 : Selenium IDE(Integrated Development Environment)
- Install Plugin for Selenium IDE on Firefox
- Setting up a simple record and playback script using Selenium IDE
- Export Script in various programming languages as the requirement (Python in our case)
Chapter 9 : Element Locator Strategies
- Locating Element using Xpath (absolute or relative), using Indexes for same XPATH elements
- Locating Element using Css , id
- Locating Multiple elements using same XPATH
- Locating All elements using Selenium IDE
- Locating Elements with Link Text and Partial Link Text
- Locating Elements using Google Chrome Inspector
Chapter 10 : Simple Basic Selenium Script
- Launch Basic Web browser and load the URL
- Locate elements using Python bindings of Selenium Webdriver
- Miscellaneous Capabilities of Selenium bindings
Chapter 11 : Unittests
- Execute the tests using unittest framework
- Use various Assertion methods to verify the tests to be performed
- Execute multiple testcases using unittests.
- Setup and Teardown
- HTML Reporting for Test runs
Chapter 12 : Data Driven Framework
- Reading the data from json file of dictionary type
- Modifying the scripts to read data from json and execute the test runs
Chapter 13 : Selenium Python Bindings
- Webdriver class, Webelement class and various methods
- Working with textboxes, checkboxes, and radio buttons.
- Dropdowns Lists
- Scroll Elements in the View
- Alerts and Popup Windows
- Switching and Handling Multiple Windows
- Working with Tables
- Ancestors and Descendants
Chapter 14 : Custom Interruptions
- Implicit and Explicit waits
- Wait conditions
Chapter 15 : Selenium Grid
- Testing on chrome and internet explorer
- Setting up Selenium Grid and browser specific nodes
- Managing the test runs on Chrome, Firefox, IE based on Selenium Grid
CHAPTER 1 : INSTALLATION AND CONFIGURATION
- Introduction and Significance of Robot Framework
- Installation with Python, PIP utility. Installing Robot Framework libraries.
- Eclipse, Robot Framework Plugin
- RED plugin for Eclipse and Debugging the scripts
CHAPTER 2 : SAMPLE ROBOT SCRIPT
- Pybot Concept, Script file extensions (.txt or .robot). Reports and Logs of the test runs. Settings, Testcases, Variables
- Parameterized Keywords
CHAPTER 3 : INTEGRATION OF PYTHON
- Creating Python scripts and calling them into Robot Framework.
CHAPTER 4 : STANDARD LIBRARIES AND DATA STRUCTURES
- Standard Libraries – Builtin,
- Operating System – File Handling, Global Variables, Environment Variables
- List, Dictionaries using Collections Library
CHAPTER 5 :CONDITIONAL AND LOOP FLOW
- If Else
- For Loop
CHAPTER 6 :EXTERNAL LIBRARIES (SELENIUM2LIBRARY)
- Selenium2Library, Launch Browser
- Locator Using Methods in Robot Framework.
- Custom Waits, Switching Windows, Alert Boxes,Dropdown boxes
- Various Assertions supported
CHAPTER 7:DATA DRIVEN AND KEYWORD DRIVEN FRAMEWORK
- Using JSON file to read Test data, Using keyword methods as utilities.
- Parameterized pybot command
CHAPTER 8 :SETUP AND TEARDOWN
- Suite and Tests Setup and Teardown
CHAPTER 9 :TAGGING STRATEGY
- Tagging Strategies for group the Test Suites and execute them in serial Manner.
CHAPTER 10 :REPORTING STRATEGIES
- Generating Customized reports. Report Title, suite level.
- Rebot Library to merge reports of multiple runs.
CHAPTER 11 :PARALLEL TEST EXECUTION
- Using Pabot utility and Selenium Grid to execute multiple tests in parallel.
- Leverage Selenium Grid Setup with RobotFramework for Cross Browser Testing
Advanced Test Automation Concepts
Chapter 1 : Automation Framework structure
- Understanding application under test
- Writing utilities for UI and non-UI parts of the application.
- Writing parser utilities for external test datasource using json file.
- Writing config utilities to get data from config file.
- Page Object Framework
Chapter 2 : Basics of Git
- Introduction to Version Control
- What is Git
- Version Control with Git
- Why Git For Organisation
- Git Flow Diagram
Chapter 3: Setup Git ( Bitbucket )
- Setup Repository
- Save changes
- Inspecting Repository
- Analyse Commits
- Revoke changes
Chapter 4 : Collaborative Contribution in Git Repository
- git remote
- git fetch
- ‘/git pull
- git push
- Git stash
- Making pull requests
- Branching Strategies
Chapter 5 : Continuous Integration / Continuous Delivery
- What is Continuous Integration / Delivery
- Introduction to Jenkins
- Creating Simple Job in Jenkins
- Running Selenium Scripts with Jenkins
- Integrating Git in Jenkins for Selenium Script runs
- Creating Parameterized Jenkins Jobs to Generalize Selenium Test Runs
- Making Framework generalised based on Parameterized Jobs
- Run RobotFramework End 2 End Test Runs from Repository
- Trend Analysis of RobotFramework Runs using RobotFramework Plugin on Jenkins
Chapter 6: Containerization With Docker
- Basics of Docker
- Docker Images , Docker Volumes
- DockerFile, Docker- Compose
- Integration of Docker with Jenkins
- Running Robot Framework Tests in Docker Containers