Cover image for Selenium Testing Tools Definitive Guide.
Selenium Testing Tools Definitive Guide.
Title:
Selenium Testing Tools Definitive Guide.
Author:
Avasarala, Satya.
ISBN:
9781782168867
Personal Author:
Physical Description:
1 online resource (264 pages)
Contents:
Cover -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: Introducing WebDriver and WebElements -- Understanding the history of Selenium -- Selenium 1 or Selenium Remote Control or Selenium RC -- Selenium 2 or Selenium WebDriver or WebDriver -- Differences between Selenium 1 and Selenium 2 -- Handling the browser -- Having better APIs -- Testing mobile apps -- Having developer support and advanced functionalities -- Setting up a project in Eclipse -- WebElements -- Locating WebElements using WebDriver -- The findElement() method -- The findElements() method -- FireBug -- Using the By locating mechanism -- Actions on WebElements -- The getAttribute() method -- The sendKeys() method -- The clear() method -- The submit() method -- The getCssValue() method -- The getLocation() method -- The getSize() method -- The getText() method -- The getTagName() method -- The isDisplayed() method -- The isEnabled() method -- The isSelected() method -- Summary -- Chapter 2: Exploring Advanced Interactions of WebDriver -- Understanding actions, build, and perform -- Learning mouse-based interactions -- The moveByOffset action -- The click at current location action -- The click on a WebElement action -- The clickAndHold at current location action -- The clickAndHold 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 doubleClick at current location action -- The doubleClick on WebElement action -- The contextClick on WebElement action -- The contextClick at current location action -- Learning keyboard-based interactions -- The keyDown and keyUp actions -- The sendKeys() method -- Summary -- Chapter 3: Exploring the Features of WebDriver.

Setting the desired capabilities for a browser -- Taking screenshots -- Locating target windows and iFrames -- Switching among windows -- Switching among frames -- Handling alerts -- Exploring Navigate -- Waiting for WebElements to load -- Implicit wait time -- Explicit wait time -- Handling cookies -- Summary -- Chapter 4: Different Available WebDrivers -- Firefox Driver -- Understanding the Firefox profile -- Adding the extension to Firefox -- Storing and retrieving a profile -- Dealing with Firefox preferences -- Setting preferences -- Understanding frozen preferences -- Firefox binary -- Installing multiple versions of Firefox -- InternetExplorerDriver -- Installing InternetExplorerDriver -- Writing your first test script for the IE browser -- Building the InternetExplorer driver service -- Understanding IEDriver capabilities -- ChromeDriver -- Installing ChromeDriver -- Writing your first test script for the Chrome browser -- Using ChromeOptions -- SafariDriver -- Writing your first test script for the Safari browser -- OperaDriver -- Installing OperaDriver -- Writing your first test script for the Opera browser -- Summary -- Chapter 5: Understanding WebDriver Events -- Introducing 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 change -- Listening for WebElement clicked -- 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 any exception -- Unregistering EventListener with EventFiringWebDriver -- Summary -- Chapter 6: Dealing with I/O -- Learning about the FileHandler class -- Copying files from the source to the destination directory -- Copying files from the source to the destination directory based on filename suffix -- Creating a directory -- Deleting a file or directory -- Understanding the IsZipped() method -- Understanding the makeExecutable() method -- Understanding the makeWritable() method -- Reading a file -- Understanding the canExecute() method -- Learning about the TemporaryFilesystem class -- Understanding the default temporary filesystem -- Creating a directory in DefaultTmpFS -- Deleting a temporary directory -- Deleting multiple files -- Changing the temporary filesystem -- Learning about the Zip class -- Compressing a directory -- Decompressing a directory -- Summary -- Chapter 7: Exploring RemoteWebDriver and WebDriverBackedSelenium -- Introducing RemoteWebDriver -- Understanding the RemoteWebDriver server -- Downloading the server -- Running the server -- Understanding the RemoteWebDriver client -- Converting an existing test script to use RemoteWebDriver server -- Using RemoteWebDriver for the Firefox browser -- Using RemoteWebDriver and the IE browser -- Using RemoteWebDriver and the Chrome browser -- Extending the RemoteWebDriver client to take screenshots -- Understanding the JSON wire protocol -- Replacing the client library with your own code -- Exploring WebDriverBackedSelenium -- Summary -- Chapter 8: Understanding Selenium Grid -- Exploring Selenium Grid -- Understanding the hub -- Understanding the node -- Modifying the existing test script to use Selenium Grid -- Requesting for nonregistered 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 time -- Unregistering an unavailable node -- Setting the browser timeout -- Hub configuration parameters -- Waiting for a match of desired capability -- Customized CapabilityMatcher -- WaitTimeout for a new session -- Different ways to specify the configuration -- Summary -- Chapter 9: Understanding 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 -- Consider a web page as a services provider -- Always look for implied services -- Using PageObjects within a PageObject -- The AddNewPost PageObject -- The AllPostsPage PageObject -- Consider 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 -- Chapter 10: Testing iOS and Android Apps -- 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 -- Installing Appium -- Automating for iOS -- Automating for Android -- Summary -- Index.
Abstract:
An easy- to- follow guide, featuring step-by-step practical tutorials to help you understand how to automate web applications for testing purposes.If you are a quality assurance / testing professional, a software developer, or a web application developer looking to create automation test scripts for your web applications, this is the perfect guide for you! As a pre-requisite, this book expects you to have a basic knowledge of Core Java, although any previous knowledge of WebDriver or Selenium-1 is not needed. By the end of this book, you will have acquired a comprehensive knowledge of WebDriver, which will help you in writing your automation tests.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Electronic Access:
Click to View
Holds: Copies: