1.Introduction
2.End-to-end testing
- User manual tests
- Automated tests
3.Selenium UI
- Selenium IDE
- Selenium WebDriver
4.First test
- Basic test configuration
- WebDriver configuration
- Exporting a test from Selenium IDE
5.Drivers
6.Navigation
7.Location of UI elements
- Selecting embedded elements
- Working with lists
8.Taking actions
- Check properties
- Click
- Keyboard use
- Keyboard action sequence
- Context menu
- File upload
- Touch actions
- Select element
9.Cleaning after test
10.Waiting for elements
- Direct waiting
- Implicit waiting
- Explicit waiting
- Getting element, once it is present
11.Handling errors
- Asserts
- Screenshots
12.Real work use case
13.Page Objects pattern
- What is it?
- When to use it and when not?
- How to write it?
- Attribute selectors
- Actions in page objects
- Fluent interface
- Problems of fluent approach
- Generators
14.Testing multiple cases
15.Creating BDD tests with SpecFlow
16.Protractor for AngularJS
- Protractor JS library
- Protractor.NET library
- Comparison results
- Usages
17.The power of JavaScript
- Kendo Grid operations
18.Selenium tests maintenance
- Immediate reaction
- Reference to user story
- Developers’ convention
19.Designing good tests
- Identifying test cases
- Designing process
- Real world example
- Before you start
Appendix 1 Test on multiple browsers
- Simple test
- Test in different browsers
- Test for different browser settings
- Testing the responsiveness of web pages
- Test on different environments