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