Testing With Selenium Webdriver
Kyle Waters
Lead Software Architect, Venturedata, LLC
Selenium Webdriver
- Selenium Server Standalone
- Start using java -jar
- Listening on port
- API classes availiable for most languages
Formerly Selenium Remote Control
You will need to install java
Make sure to open the port on your firewall
Install bindings for prefered language
Official Selenium Binding Languages
- Java
- C#
- Ruby
- Python
- Javascript
Unofficial Selenium Binding Languages
- Perl
- PHP
- Haskell
- Objective-C
- R
- Dart
- Tcl
Built in Browser Drivers
- HtmlUnit
- Firefox
- Internet Explorer
Other Browser Drivers
- Chrome
- Opera
- Mobile Browsers
- Safari
Demo Bindings
- Facebook Webdriver
- PHPUnit Extensions Selenium2
- Selenium::Remote::Driver
First Usage
- Include Bindings
- Set Selenium Server
- Select Browser
- Open URL
Selecting Elements
- Name
- ID
- Class Name
- Tag Name
- Link Text
- Partial Link Text
- CSS
- XPath
- Javascript
The XML Path Language
- xpath
- /body/form/input
- //input[@name="login"]
Uses first element found.
Element Post Functions
- Click
- Send Keys
- Tap
- Clear
https://w3c.github.io/webdriver/webdriver-spec.html
Element Get Functions
- Displayed
- Selected
- Attribute/Name
- CSS/propertName
- Text
- Name
- Rect
- Enabled
Browser Profiles
- Select Different Profiles
- Disable Plugins
- Other Settings
Waiting for the page to load
- Implicit Time Out
- Sleep
- Try/Catch
Testing Errors
- Check error messages
- Check database