Science of Selenium
US$ 19.95
The publisher has enabled DRM protection, which means that you need to use the BookFusion iOS, Android or Web app to read this eBook. This eBook cannot be used outside of the BookFusion platform.
Description
Contents
Reviews
Language
English
ISBN
9789389423242
Cover Page
Title Page
Copyright Page
Dedication
About the Author
About the Reviewer
Acknowledgement
Foreword
Preface
Errata
Table of Contents
1. Introduction to Test Automation
Structure
Objective
What is automation?
Introduction to test automation
Benefits of test automation
History of test automation
Generations of test automation
When to do test automation?
Myths of Test Automation
Test automation as a tool for test data generation
Some good test automation tools
Test automation success criteria/measures
Test automation framework design
Conclusion
Questions
2. Introduction to Selenium
Structure
Objective
History of Selenium
What are the features available in Selenium?
Why should we use Selenium and what are the benefits of Selenium?
Why should we use Selenium?
What are the benefits of Selenium?
What are the limitations and challenges of using Selenium?
How can Selenium help build a solid test automation framework?
What are the complexities of web application automation by using Selenium WebDriver?
What are the platform and browser combination challenges?
Conclusion
Questions
3. Understanding Selenium Architecture
Structure
Objective
Selenium Architecture
Selenium client/core libraries
JSON wire protocol over HTTP
Browser drivers
Browser
Selenium Remote-Control (RC) Architecture
Selenium WebDriver Architecture
Selenium language bindings and client libraries
Java program to automate a web action
A Python program to automate similarly
Selenium WebDrivers
Selenium browser drivers/supported browsers
Conclusion
Questions
4. Understanding Selenium Tools
Structure
Objective
Selenium WebDriver
Selenium IDE
Java output from IDE
Python output from IDE
JavaScript output from IDE
Procedural programming using control statements
Selenium Grid
Selenium Grid Architecture
How to start Selenium Grid
Command line parameters and configuration operations
Running a Selenium Grid test using Selenium RC
Running a Selenium Grid test using WebDriver
Command-line help using Selenium Grid
How to leverage a proxy?
Selenium RC
Conclusion
Questions
5. Introduction to Web UI Automation Using Selenium
Structure
Objective
Components of the Web UI
Structureof a Web Page
HTML
WEB UI - Cascading Style Sheets (CSS)
CSS Selectors
Document Object Model
Element Locators
Locators using ID and Name
Example of Locator by Identifier
Example of Locator by Name
Example of Locator by Links
Example of Locator by Tag Names
Example of Locators by Class Names
Locators using CSS
Example of Locators by XPATH
Other Locators Available
Custom Locators
Selenium Event Handling
Asynchronous Interactions in Selenium
Screen Size Management
Web UI Automation with Browsers (Firefox, Chrome, Internet Explorer and Safari)
Headless Browser Instantiation
Headless Browser Testing
Conclusion
Questions
6. Web UI Automation with Selenium
Structure
Objective
Python example to understand the components of Web UI
Correlation between various locators using DOM, CSS in an HTML Page
Python event handling for Selenium
Simulation of screen sizes
Asynchronous interaction
Use of Python to handle cookies in a web site
Use of Python code to invoke various browsers
WebDriver.Firefox and WebDriver.FireFoxProfile classes
WebDriver.Chrome and WebDriver.ChromeOptions()
DesiredCapabilities
Initiating browsers for Internet Explorer, Opera, Safari and PhantomJS
Use of PhantomJS for Headless Browser Testing
WebDriver.ActionChains
WebDriver.TouchActions
WebDriver.Proxy
Conclusion
Questions
7. Selenium Coding with Other Languages (JavaScript, Ruby)
Structure
Objective
Launch and closure of browsers
Page navigation
JavaScript example on asynchronous execution
Filling out a web form – A JavaScript example
Filling out a web form – A Ruby example
Headless browser testing – JavaScript
Headless browser testing – Ruby
Ruby Cookies Management example
Ruby -screen size emulations
Ruby example for moving between frames and windows
Ruby example handling pop-ups and alerts
Ruby example handling drag and drops
Ruby example for locators
Ruby Example for submission of forms data
Ruby example getting form element values
JavaScript example for WebElementPromise
Conclusion
Questions
8. Building a Test Automation Framework with Selenium
Structure
Objectives
Building a Test Automation Strategy
Key actions for building a test automation strategy
Choosing a programming language
Defining the automation framework architecture
Choosing a unit test framework
Designing core components of framework – modularization
Designing test components of a framework
Designing reporting mechanism
How to perform Source Code Control, Build, and Continuous Integration in DevOps
How to integrate with other tools
Conclusion
Questions
9. Advanced Features of Selenium Using Java and Python
Structure
Objectives
Page Object Model
Page Object Model using Java
Page Object Model using Python
File and database handling
Working with Excel files
Working with property files
Working with CSV files
Working with databases
Reporting in Selenium
Selenium Test Reporting using TestNG
Continuous Integration/Continuous Deployment / Continuous Testing with Selenium
Conclusion
Questions
10. Cross-Browser Test Automation
Structure
Objectives
Cross-browser testing and why is it important?
Running Cross-Browser Testing – With Selenium Grid
Selenium grid-based cross-browser testing
Use of emulators for cross-browser test verification
Use of commercial tools and services for cross-browser testing
Cross-browser testing – Example-2
Other commercial platforms to consider
Conclusion
Questions
11. Tips and Tricks for Test Automation
Structure
Objectives
When and what to automate?
Manual Vs Automated Testing – Some comparison
Inverting the test automation pyramid
Test automation strategy
Strategizing right vs automating fast
Benefits of automating a stable application versus an unstable application
Automating all vs automating right
Some tips and tricks to follow whiledoing test automation
Pitfalls to avoid whiledoing a test automation project
Myths about test automation – 100% automation vs automating right
Automating the test automation
Record and hardcoding vs intelligent automation
Automation tools and methods
Use of Visual Regression in test automation
Script-less test automation
Use of Artificial Intelligence (AI) in test automation
Test Automation for DevOps Projects
Selenium automation leading practices/recommendations
Conclusion
Questions
12. Interview Tips
Structure
Objective
Interview strategy, approach and planning
Interview preparation
Key points to prepare for the interview
Logistics and firm/company research preparation
Technical/functional Preparation
Appearance/grooming preparation
Types of interview & approaches
Interview approaches
Interview process
Good questions to ask by the candidates
After the interview is over
What are some reasons why people are not hired?
What are some reasons why people are hired?
What are the things not to do during an interview?
How to make a good decision, when offers are made?
Virtual interviews
Handling telephonic interviews
Handling Skype telephonic/video interviews
Behaviours to adopt and avoid
Conclusion
Questions
Loading...