EIEIOTECHNOVATION
← Training programmes

EIEIO / PROGRAMMING & DEVELOPMENT

PYTHON SELENIUM

Course outline

4 days

Duration

4 days

Objectives

To achieve Test Automation using Selenium – Python, API Automation and also designing a framework from scratch.

Outline

Installation

Introduction

  • Downloading Python bindings for Selenium
  • Downloading Selenium server

Python Concepts

Overview

  • Environment Setup
  • Basic Syntax
  • Variable Types
  • Basic Operators
  • Decision Making
  • Loops
  • Numbers
  • Strings
  • Lists
  • Tuples
  • Dictionary
  • Date & Time
  • Functions
  • Modules
  • Files I/O
  • Exceptions
  • Classes/Objects
  • Reg Expressions

Selenium Introduction

  • Selenium History
  • Migrating to WebDriver latest Version
  • Selenium 2.0 and 3.0 WebDriver Architecture
  • Selenium IDE

Locator Techniques& Tools used

  • Preview Browser Add-ons overview to identify elements
  • Locator Techniques : XPath identification, CSS identification, Name ,ID, ClassName, LinkText,-Handling links
  • XPath, CSS Validation using chrome and javascripts

Installations and Configurations with Python basics

  • Python Installation
  • Eclipse Installation , configuration
  • Selenium Jars download/Configuration
  • Brush up basic Python concepts

Basic Concepts for first WebDriver program

  • WebDriver Interface explanation and Invoking Browser
  • Basic Methods of WebDriver
  • How to run tests in Google Chrome
  • How to run tests in Internet Explorer

Techniques to automate Web UI

  • Handle Dynamic dropdowns with WebDriver API
  • Handling Static dropdowns with Select WebDriver API
  • Handling Checkboxes with WebDriver API
  • Handling Radio buttons with Customized XPath
  • Handling Radio button dynamically- real time examples
  • Types of Alerts present and Methods to handle them
  • Handling Alerts using WebDriver API
  • Web Elements Validation
  • End to End Practice Exercise

Real Time Exercises (end to end Programming)

  • Test Cases- Practice Exercise
  • Exercise 1.1-Limiting WebDriver scope
  • Getting Count of links in the pages ,sections
  • Testcases-Practice Exercise-2
  • Exercise 2.1-Dynamic data in Websites
  • Exercise 2.2-Dynamic Links Handling
  • Exercise 2.3-Validations & checkpoints

ADVANCED WAYS-locating objects

  • writing Customized XPath Using Attributes
  • Writing customized XPath Using Tagnames Traversing
  • Css Selectors locators

Techniques to automate ADVANCNED Web UI

  • Handling Ajax/Mouse Interactions
  • Handling javascript actions
  • Actions class-real time example
  • Handling Multiple Windows
  • Window Handle concepts-real time example
  • Live Example on working with Child windows
  • Handling ul li Tags in Selenium
  • How to handle Frames?
  • Frames Techniques-real time example

Practical problems and Methods to handle them with Selenium

  • How to handle table Grids in webpage
  • Techniques used for table grid-Real time example
  • How to overcome Synchronization problems
  • Maximizing window and deleting cookies
  • Handling HTTPS certifications
  • How to troubleshoot if it is not invoking in Firefox
  • Killing the Process and Cookies using Selenium
  • How to take Screenshots in Selenium

Handing dynamic pages using JavaScript

  • How to handle forms using JavaScript.
  • Techniques used for handling dynamic dropdown
  • Validation of XPath and CSS using JavaScript
  • Getting video content using JavaScript
  • Handling videos using JavaScript

Framework Part -1 - Working with Pytest Framework

Introduction

  • Environment Setup
  • Identifying Test files and Functions
  • Starting With Basic Test
  • File Execution
  • Execute a Subset of Test Suite
  • Substring Matching of Test Names
  • Grouping the Tests
  • Fixtures
  • Conftest.py
  • Parameterizing Tests
  • Xfail/Skip Tests
  • Stop Test Suite after N Test Failures
  • Run Tests in Parallel
  • Test Execution Results in XML

Framework Part 2 - Data driving from Excel for feeding data

  • what is Apace POI API & Download Instructions
  • Excel API Methods explanation
  • Program for Retrieving data from excel
  • Program for Updating data back to excel

Framework Part 3 - Keyword Driven Framework

Framework Part 4 - Page Object Model

  • What is Page object model?
  • Creating Page object Constructor in classes
  • Practical Exercise explaining Pageobject Model

Database Connectivity and Test Scenarios

  • Establishing connection to database
  • Sql queries
  • Fetch Data
  • Add Data
  • Update Data
  • Compare Data
  • CURD operations on database
  • Selenium with Database testing.

Cross Browser Testing with Selenium Grid

  • How to execute Selenium Tests Remotely
  • Grid Concepts & Architecture
  • Configuring Hub and Node
  • Registering Nodes with Hub Server
  • Desired Capabilities-Grid Program
  • Execution Selenium scripts in Remote Machine
  • Code and Commands

GIT-Jenkins- CI Tool

  • GIT Installation
  • Working with GIT
  • Why Jenkins? and where it going to help us in Framework design?
  • Installing & Configuring Jenkins with Java and ANT
  • Creating Jenkins project and integrating Existing Framework
  • Running the Framework and Scheduling it from Jenkins

Programme scope, delivery arrangements and suitability are confirmed during enquiry.