My Account Log in

3 options

Mastering selenium webdriver 3.0 : boost the performance and reliability of your automated checks by mastering Selenium WebDriver. / Mark Collin.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Collin, Mark, author.
Language:
English
Subjects (All):
Application software--Testing.
Application software.
Physical Description:
1 online resource (365 pages) : illustrations
Edition:
Second edition.
Place of Publication:
Birmingham, England ; Mumbai : Packt, 2018.
System Details:
text file
Summary:
Complement Selenium with useful additions that fit seamlessly into the rich and well-crafted API that Selenium offers About This Book Understand the power, simplicity, and limitations of the core Selenium framework Write clear, readable, and reliable tests that perform complex test automation tasks Work with ChromeDriver and GeckoDriver in headless mode Who This Book Is For If you are a software tester or a developer with working experience in Selenium and competency with Java, who is interested in automation and are looking forward to taking the next step in their learning journey, then this is the book for you. What You Will Learn Provide fast, useful feedback with screenshots Create extensible, well-composed page objects Utilize ChromeDriver and GeckoDriver in headless mode Leverage the full power of Advanced User Interactions APIs Use JavascriptExecutor to execute JavaScript snippets in the browser through Selenium Build user interaction into your test script using JavascriptExecutor Learn the basics of working with Appium In Detail The second edition of Mastering Selenium 3.0 WebDriver starts by showing you how to build your own Selenium framework with Maven. You'll then look at how you can solve the difficult problems that you will undoubtedly come across as you start using Selenium in an enterprise environment and learn how to produce the right feedback when failing. Next, you'll explore common exceptions that you will come across as you use Selenium, the root causes of these exceptions, and how to fix them. Along the way, you'll use Advanced User Interactions APIs, running any JavaScript you need through Selenium; and learn how to quickly spin up a Selenium Grid using Docker containers. In the concluding chapters, you'll work through a series of scenarios that demonstrate how to extend Selenium to work with external libraries and applications so that you can be sure you are using the right tool for the job. Style and approach This book is a pragmatic guide that takes you through the process of creating a test framework with Selenium 3. It then shows you how you can extend this framework to overcome common obstacles that you will come across whilst using Selenium.
Contents:
Cover
Title Page
Copyright and Credits
Contributors
Packt Upsell
Table of Contents
Preface
Chapter 1: Creating a Fast Feedback Loop
Making it easy for developers to run tests
Building our test project with Apache Maven
Running your tests in parallel
Parallel tests with TestNG
There are no silver bullets
Multiple browser support
Downloading WebDriver binaries automatically
Going headless
What happened to GhostDriver?
Summary
Chapter 2: Producing the Right Feedback When Failing
Location, location, location
Tests are living documentation
Reliability
The test automation team that works in isolation
Oh, that test always flickers - don't worry about it
Baking in reliability
Git
Subversion
Continuous integration is key
Setting up TeamCity
Setting up Jenkins
Extending our capabilities by using a Selenium-Grid
A picture paints a thousand words
Don't be afraid of the big bad stack trace
Chapter 3: Exceptions Are Actually Oracles
NoSuchElementException
NoSuchFrameException
NoSuchWindowException
ElementNotVisibleException
StaleElementReferenceException
InvalidElementStateException
UnsupportedCommandException
UnreachableBrowserException
SessionNotFoundException
WebDriverException - element is not clickable at point
NoAlertPresentException
Chapter 4: The Waiting Game
Are we nearly ready yet?
I've timed it, and I know it takes 5 seconds for the page to load
Machine specification
Server specification
JavaScript engine performance
Networks
So, what do we do?
I just want Selenium to do it for me
Page load timeout
Script timeout
Implicitly wait timeout
It can slow my tests down?
It can break explicit waits?
The explicit wait that never finds an element.
Hang on, I've tried this and it didn't work that way for me!
The explicit wait that works, but slows your tests down
The solution
Using explicit waits
Fluent waits, the core of explicit waits
Functions
Java8 lambdas
Chapter 5: Working with Effective Page Objects
Why do you keep repeating yourself?
Starting out with page objects
Separation of concerns with page objects
Introducing the Java PageFactory class
Using PageFactory annotations
Initializing proxied objects
Problems with the Java PageFactory class
Introducing the Query object
So, which option should I use?
Creating extensible page objects
Turning your page objects into a readable DSL
Fluent page objects
Chapter 6: Utilizing the Advanced User Interactions API
Getting started with the API
Using the API to solve difficult problems
Working with hover menus
Working with drag and drop
Working with offsets
Working with access keys
The Advanced Interactions API doesn't always work for me
Chapter 7: JavaScript Execution with Selenium
Introducing the JavaScript executor
Let's not get carried away
So, what should we do with it?
A more complex example
Executing complex blocks of JavaScript with the JavascriptExecutor
Can I use JavaScript libraries?
Should I inject JavaScript libraries?
What about asynchronous scripts?
Building user interaction into your automation
Chapter 8: Keeping It Real
File downloads with Selenium
The scenario
The problem
So, what's next?
Do you really need to download that file?
Checking that links are valid
What if I do need to download the file?
AutoIt
Java Robot class
Browser auto download
Extending our existing code
Downloading a file with the help of Selenium.
But that's not the same as clicking on a link and downloading the file
Checking that the file we have downloaded is the correct one
You cannot track network traffic with Selenium
But I really want to track my network traffic!
Writing performance tests with Selenium
Penetration testing with Selenium
Chapter 9: Hooking Docker into Selenium
Introducing Docker
Spinning up Selenium-Grid with Docker
Running tests against our new Selenium-Grid
Starting up Docker containers as part of the build
Using a Docker Maven plugin
Using Docker compose
What about the negatives?
Chapter 10: Selenium - the Future
Machine learning - the new Holy Grail
Visual validation
Applitools Eyes
So what has this got to do with AI?
Self healing tests
Having your tests written for you
Appendix A: Contributing to Selenium
Appendix B: Working with JUnit
Appendix C: Introduction to Appium
Other Books You May Enjoy
Index.
Notes:
Previous edition published: 2015.
Description based on print version record.
ISBN:
9781788293686
1788293681
OCLC:
1045024196

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account