This course is intended to teach UI Automation of Web Applications with Selenium alongside Behave Framework using python as the programming language for writing the automated scripts.
Selenium automates browsers. That’s it! What you do with that power is entirely up to you. Primarily, it is for automating web applications for testing purposes, but is certainly not limited to just that. Boring web-based administration tasks can (and should!) be automated as well. Selenium has the support of some of the largest browser vendors who have taken (or are taking) steps to make Selenium a native part of their browser. It is also the core technology in countless other browser automation tools, APIs and frameworks.
Behave is a python based BDD(Behaviour Driven Development) framework which can be used in conjunction with various other python libraries to automate the application’s feature under test.
Behavior-driven development (or BDD) is an agile software development technique that encourages collaboration between developers, QA and non-technical or business participants in a software project.
Behave uses tests written in a natural language style, backed up by Selenium, Python code.
Below are the values one can add to their profile on taking this exclusive course:
- Tools: VSCode, pip3, virtualenv, Chrome DevTools etc.,
- Platform: Jenkins, Selenium Grid
- Programming Language: Python3
- Concepts: Manual Testing, Automation Testing, UI Testing, CI/CD
- Technical Domain: Software Testing
- Business Domain: Retailer, Banking, Insurance, Finance, HealthCare, Pharma, IT Services etc.,
This course is designed to teach you:
- What is automation testing?
- Why the need for test automation?
- Introduction to Python3
- Selenium Deep-Dive
- Behave fundamentals(Gherkin Language)
- Setting up the test environment
- Traditional approach of writing the test scripts selenium framework
- Writing the test scripts in combination of Behave and Selenium Frameworks
- Running the tests and generating the reports
- An overview of Jenkins CI/CD
- Setting up of Jenkins locally
- Running our tests scripts on a Jenkins box
This course is intended for candidates who are either Beginners or Experienced candidates who want to enhance their skills in test automation can take this course.
This course will be delivered through a mix of:
- Instructor-Led Training
- Hands-on Labs
- Knowledge Checks
This course includes activities that will allow you to test new skills and apply knowledge through hands-on lab activities.
- 6-8 classes, each class around 3-4 hrs. Totaling approx. 30 hrs. training on a live website real project.
Pre-Requisites (Installation instructions will be sent ahead of class)
- A desktop (PC/MAC) with at least 2 gig memory and 10GB free space with at least 1.5GHz processor
- Python3 Installed
Note: course outline may vary slightly based on the regional location and/or language in which the class is delivered.
Module 1: Introduction
- Introduction to Software Testing
- Understanding the SDLC
- Different types of testing
- Understanding the need and scope of testing
Module 2: Introduction to Python 3
- Installation of Python3(MAC/Linux/Windows)
- Understanding virtualenv
- Understanding pypy and pip3
- Installing requirements using pip3
- Python Overview
- Data Types
- Conditional Statements(if..else..elif)
- Loops in Python
- File I/O
- Exception Handling
Module 3: Selenium with Python
- What is DOM & how to work through a DOM?
- How to inspect elements on a web element using Chrome DevTools
- Different ways of inspecting an element
- Working with IFrames
- Understanding Selenium framework
- Traditional approach of writing and executing Selenium scripts
- Some useful tips & tricks with selenium!!!!
Module 4: Behave BDD Framework
- Install prerequisites
- Installing behave with pip3
- Understanding the fundamentals principles of behave framework
- Behave deep dive
- Writing & executing behave scripts
- Integrating of selenium scripts with behave framework
- Running a complete test suite with behave
- Generating the test reports
- Writing helper functions
- Re-Run the failed scenarios with behave
- Other misc. behave features
- Generating Reports with Behave
Module 6: Jenkins CI/CD
- A Brief introduction to CI/CD
- Basic understanding of Jenkins Pipeline scripting
- Setting up a Jenkins Box
- Running your behave scripts on Jenkins Box using a Pipeline Script
- Viewing the generated JUnit reports on Jenkins Pipeline job
Module 5: Selenium Grid
- Why a Selenium Grid?
- Setting up Selenium Grid
- Running selenium scripts on a grid traditionally
- Running selenium scripts on a grid with behave