Practical Web Test Automation with Selenium WebDriver
Test web applications wisely with Selenium WebDriver
Facebook releases twice a day; LinkedIn pushes out updates several times a day. What do they do in common to achieve that? Comprehensive automated UI testing.
The author is letting you choose the price you pay for this book!
Facebook releases twice a day; LinkedIn pushes out updates several times a day. What do they do in common to achieve that? Comprehensive automated UI testing.
About
About the Book
While few people deny the benefits of test automation, comprehensive automated testing via UI (browser for web applications) is rarely implemented in software projects. Common reasons for projects' failed attempts on test automation are:
- Difficult to learn - test scripts are complex and testing tools are not easy to use
- Hard to maintain - UI tests are vulnerable to application changes
- Long feedback loop - automated tests take too long to run
To succeed in automated testing via UI, software projects need to overcome all these 3 challenges.
This book presents a practical approach to implementing test automation for web applications. Topics include:
- Developing easy to read and maintain Selenium WebDriver tests using a next-generation functional testing tool
- Page object model
- Functional Testing Refactorings
- Cross-browser testing
- Setting up a continuous testing server to manage the execution of a large number of automated UI tests
- Requirement traceability matrix
- Strategies on team collaboration and test automation adoption in projects and organizations
To help readers learn more effectively, the book has a dedicated site containing the following resources:
- Software. Test automation is not necessarily expensive. All test frameworks featured in this book are free and open-source.
- Sample test scripts. Ready-to-run test scripts for the exercises in the book.
- Demo web sites. Two demo sites were created for readers to try out test scripts.
- Tutorial screencasts. You will be able to see how exercises are done step by step.
Price
Pick Your Price...
Minimum price
$20.00
$30.00
You pay
$30.00Author earns
$24.00Author
About the Author
Zhimin Zhan
Zhimin Zhan is the founder and principal agile testing coach of AgileWay Pty Ltd, Australia. As an advisor and coach, he helps organisations implement test automation using Continuous Testing with open technologies, such as Selenium WebDriver / Appium. Zhimin is the creator of TestWise, the next-generation functional testing tool that supports functional test refactorings, and BuildWise, an international award-winning Continuous Testing Server. Zhimin is a frequent speaker and author of 14 books on software testing and programming. He shares his test automation and CI experience on Substack and Medium.
Contents
Table of Contents
Preface
- Who should read this book?
- How to read this book?
- What’s inside the book?
- Test scripts, Screencasts and other resources
- Send me feedback
- Acknowledgements
1What is Web Test Automation?
- 1.1Test automation benefits
- 1.2Reality check
- 1.3Reasons for test automation failures
- 1.4Successful web test automation
- 1.5Learning approach
- 1.6Next action
2First Automated Test
- 2.1Test Design
- 2.2Installing TestWise (about 2 minutes)
- 2.3Create Automated Test
- 2.4Selenium Syntax in minutes
- 2.5Create a test case
- 2.6Run the full test in a Chrome browser
- 2.7Running on macOS
- 2.8When a test failed…
- 2.9Wrap up
3How Automated Testing works
- 3.1Web test drivers
- 3.2Automated testing rhythm
- 3.3Test frameworks
- 3.4Run tests from the command line
4TestWise - Functional Testing IDE
- 4.1Philosophy of TestWise
- 4.2TestWise project structure
- 4.3Test execution
- 4.4Keyboard navigation
- 4.5Snippets
- 4.6Script library
- 4.7Test refactoring
- 4.8Wrap up
5Case Study
- 5.1Test site
- 5.2Preparation
- 5.3Create a test project
- 5.4Test Suite: Sign in
- 5.5Test Suite: Select Flights
- 5.6Enter passenger details
- 5.7Book confirmation after payment
- 5.8Run all tests
- 5.9Wrap up
6Maintainable Functional Test Design
- 6.1Record/Playback leads to unmaintainable test scripts
- 6.2Success criteria
- 6.3Maintainable automated test design
- 6.4Maintain with ease
- 6.5Case Study: refine test scripts
- 6.6Wrap Up
7Test Automation Characteristics
- 7.1Specific
- 7.2Clean
- 7.3Independent
- 7.4Frequent
- 7.5Focused
- 7.6Programmable
- 7.7Creative
- 7.8Sustainable
- 7.9Wrap up
8Functional Test Refactoring
- 8.1Code refactoring
- 8.2Functional test refactoring
- 8.3Tool support
- 8.4Case study
- 8.5Summary
9Review
- 9.1Syntax errors
- 9.2Set up source control
- 9.3GUI Object Map
- 9.4Custom libraries
- 9.5Debugging
- 9.6Cross-browser functional testing
- 9.7Data-Driven Test
- 9.8What is the best learning method?
10Collaboration
- 10.1Pre-requisite
- 10.2Scenario 1: “It worked on my machine”
- 10.3Scenario 2: Synergy
- 10.4Scenario 3: Acceptance Test-Driven Development
- 10.5Wrap up
11Continuous Integration with Functional Tests
- 11.1Long feedback loop
- 11.2Continuous Integration
- 11.3Continuous Integration and Testing
- 11.4CI build steps
- 11.5Functional UI testing build step with Rake
- 11.6Set up a Continuous Testing server: BuildWise
- 11.7Create a Build Project
- 11.8Trigger test execution manually
- 11.9Feedback while test execution in progress
- 11.10Build finished
- 11.11Exercise: Set up CT for your own project
- 11.12Review
12Test Reporting
- 12.1Reporting automated test results
- 12.2Defect tracking
- 12.3Requirement traceability
13WebDriver Backed variants
- 13.1Watir
- 13.2RWebSpec
- 13.3Capybara
- 13.4Test design with Watir, RWebSpec and Capybara
- 13.5Review
14Cucumber
- 14.1Cucumber framework
- 14.2Comparison: RSpec and Cucumber
- 14.3RSpec and Cucumber co-exist
15Adopting Test Automation
- 15.1Seek executive sponsorship
- 15.2Choose test framework
- 15.3Select test tool
- 15.4Find a mentor
- 15.5Manage expectation
- 15.6Solo test automation
- 15.7Common mistakes
- 15.8Wrap up
Appendix 1 Functional Test Refactoring Catalog
- Move Test Scripts
- Extract Function
- Extract to Page Class
- Introduce Page Object
- Rename
Appendix 2 Case Study: Test Automation in ClinicWise project
- Build Stats
- Stage 1: Write automated tests on the first day
- Stage 2: Set up CI server within the first week
- Stage 3: Release to production early
- Stage 4: Release often (daily)
- Stage 5: Set up parallel test execution in CI
- Questions and Answers
Resources
- Books
- Web Sites
- Tools
References
Get the free sample chapters
Click the buttons to get the free sample in PDF or EPUB, or read the sample online here
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earned over $14 million writing, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them
Write and Publish on Leanpub
You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!
Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.
Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.