Log In
Or create an account -> 
Imperial Library
  • Home
  • About
  • News
  • Upload
  • Forum
  • Help
  • Login/SignUp

Index
Title Page Copyright and Credits
Selenium WebDriver 3 Practical Guide Second Edition
Packt Upsell
Why subscribe? PacktPub.com
Contributors
About the author About the reviewer Packt is searching for authors like you
Preface
Who this book is for What this book covers To get the most out of this book
Installing Java Installing Eclipse Download the example code files Download the color images Conventions used
Get in touch
Reviews
Introducing WebDriver and WebElements
Selenium Testing Tools
Selenium WebDriver  Selenium Server Selenium IDE
Differences between Selenium 2 and Selenium 3 
Handling the browser    Having better APIs Having developer support and advanced functionalities Testing Mobile Apps with Appium
Setting up a project in Eclipse with Maven and TestNG using Java WebElements Locating WebElements using WebDriver 
The findElement method The findElements method Inspecting Elements with Developer Tools
Inspecting pages and elements with Mozilla Firefox Inspecting pages and elements in Google Chrome with Developer Tools
Using the By locating mechanism
The By.id() method The By.name() method The By.className() method The By.linkText() method The By.partialLinkText() method The By.tagName() method The By.xpath() method The By.cssSelector() method
Interacting with WebElements
Getting element properties and attributes
The getAttribute() method The getText() method The getCssValue() method The getLocation() method The getSize() method The getTagName() method
Performing actions on WebElements
The sendKeys() method The clear() method The submit() method
Checking the WebElement state
 The isDisplayed() method The isEnabled() method The isSelected() method
Summary Questions Further information
Different Available WebDrivers
Firefox Driver
Using GeckoDriver Using Headless Mode Understanding the Firefox profile
Adding the extension to Firefox Storing and retrieving a profile
Dealing with Firefox preferences
Setting preferences Understanding frozen preferences
Chrome Driver
Using Headless Mode Using Mobile Emulation for testing mobile web applications Adding ChromeExtensions
InternetExplorerDriver
Writing your first test script for the IE browser Understanding IEDriver capabilities
Edge Driver
Writing your first test script for the Edge browser
Safari Driver
Writing your first test script for the Safari browser
Summary Questions Further information
Using Java 8 Features with Selenium
Introducing Java 8 Stream API
Stream.filter() Stream.sort() Stream.map() Stream.collect() Stream.min() and Stream.max() Stream.count()
Using Stream API with Selenium WebDriver
Filtering and counting WebElements  Filtering element attributes Using the Map function to get the text value from elements Filtering and performing actions on WebElements
Summary Questions Further information
Exploring the Features of WebDriver
Taking screenshots Locating target windows and Frames
Switching among windows Switching between frames             Handling alerts   
Exploring Navigate Waiting for WebElements to load
Implicit wait time Explicit wait time
Handling cookies Summary Questions Further information
Exploring Advanced Interactions of WebDriver
Understanding the build and perform actions Learning mouse based interactions
The moveByOffset action The click at current location action The click on a WebElement action The click and hold at current location action The click and hold a WebElement action The release at current location action The release on another WebElement action  The moveToElement action The dragAndDropBy action The dragAndDrop action The double click at current location action The double click on WebElement action The context click on WebElement action The context click at current location action
Learning keyboard-based interactions
The keyDown and keyUp actions The sendKeys method
Summary Questions Further information
Understanding WebDriver Events
Introducing the eventFiringWebDriver and eventListener classes  Creating an instance of EventListener 
Implementing WebDriverEventListener  Extending AbstractWebDriverEventListener Creating a WebDriver instance  Creating EventFiringWebDriver and EventListener instances Registering EventListener with EventFiringWebDriver Executing and verifying the events Registering multiple EventListeners
Exploring different WebDriver event listeners
Listening for WebElement value changes Listening for the clicked WebElement Listening for a WebElement search event Listening for browser back-navigation Listening for browser forward-navigation Listening for browser NavigateTo events Listening for script execution Listening for an exception Unregistering EventListener with EventFiringWebDriver Performing accessibility testing Capturing page-performance metrics
Summary Questions Further information
Exploring RemoteWebDriver
Introducing RemoteWebDriver
Understanding Selenium Standalone Server
Downloading Selenium Standalone Server Running the server
Understanding the RemoteWebDriver client
Converting an existing test script to use the RemoteWebDriver server
Using RemoteWebDriver for Firefox Using RemoteWebDriver for Internet Explorer
Understanding the JSON wire protocol                                                             Summary Questions Further information
Setting up Selenium Grid
Exploring Selenium Grid Understanding the hub Understanding the node Modifying the existing test script to use Selenium Grid
Requesting for non-registered capabilities Queuing up the request if the node is busy  Dealing with two nodes with matching capabilities                                              
Configuring Selenium Grid
Specifying node-configuration parameters
Setting supported browsers by a node Setting node timeouts Setting the limit on browser instances Reregistering the node automatically Setting node health-check times Unregistering an unavailable node Setting the browser timeout
Hub-configuration parameters
Waiting for a match of the desired capability Customized CapabilityMatcher WaitTimeout for a new session
Different ways to specify the configuration
Using cloud-based grids for cross-browser testing Summary Questions Further information
The PageObject Pattern
Creating test cases for our WordPress blog
Test case 1 – adding a new post to our WordPress blog Test case 2 – deleting a post from our WordPress blog Test case 3 – counting the number of posts on our WordPress blog
What is the PageObject pattern?
Using the @FindBy annotation Understanding PageFactory
Good practices for the PageObjects design
Think of a web page as a services provider Always look for implied services Using PageObjects within a PageObject
The AddNewPost PageObject The AllPostsPage PageObject
Think of methods in PageObjects as services and not as user actions Identifying some WebElements on the fly Keeping the page-specific details off the test script Understanding loadable components
Working on an end-to-end example of WordPress
Looking at all the PageObjects
The AdminLoginPage PageObject The AllPostsPage PageObject The AddNewPostPage PageObject The EditPostPage PageObject The DeletePostPage PageObject
Looking at the test cases
Adding a new post Editing a post Deleting a post Counting posts
Summary Questions Further information
Mobile Testing on iOS and Android using Appium
Different forms of mobile applications Available software tools Automating iOS and Android tests using Appium
Automating iOS Application tests Automating Android application tests Prerequisites for Appium
Setting up Xcode Setting up Android SDK Creating the Android Emulator
Installing Appium  Automating for iOS Automating for Android Using Device Cloud to run tests on Real Devices
Summary Questions Further information
Data-Driven Testing with TestNG
Overview of data-driven testing Parameterizing Tests using suite parameters Parameterizing Tests with a Data Provider
Reading data from a CSV file Reading data from an Excel file
Summary Questions Further information
Assessments
Chapter 1  Chapter 2 Chapter 3 Chapter 4 Chapter 5 Chapter 6 Chapter 7 Chapter 8 Chapter 9 Chapter 10 Chapter 11
Other Books You May Enjoy
Leave a review - let other readers know what you think
  • ← Prev
  • Back
  • Next →
  • ← Prev
  • Back
  • Next →

Chief Librarian: Las Zenow <zenow@riseup.net>
Fork the source code from gitlab
.

This is a mirror of the Tor onion service:
http://kx5thpx2olielkihfyo4jgjqfb7zx7wxr3sd4xzt26ochei4m6f7tayd.onion