Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.
For the best experience please use the latest Chrome, Safari or Firefox browser.
Automated Cross Browser Testing
how? when? for whom?
QA
Sucks
QA
- you can't run away
- big project = high risk of regression
BUG
FIX
BUG
FIX
BUG
FIX
BUG
Automated testing FTW!
- Continus Integration
- Code More
What should I test?
Why I need integration tests?
your unit tests do not cover everything
Selenium
It's an open-source tool
That let's you automate browsers
AUTOMATE BROWSERS
one to rule them all
Selenium 1 vs Selenium 2
Selenium RC WebDriver
How it works
Your script
var wd = require('wd'),
assert = require('assert'),
browser = wd.promiseRemote();
browser.init().then(function () {
return browser.get("http://admc.io/wd/test-pages/guinea-pig.html");
}).then(function () {
return browser.title();
}).then(function (title) {
assert.equal("My title", title);
}).fin(function () {
browser.quit();
}).done();
SE server
SE driver
Application
Use browsers locally to test your app
Example
var wd = require('wd'),
assert = require('assert'),
browser = wd.promiseRemote();
browser.init().then(function () {
return browser.get("http://2013.jsday.it");
}).then(function () {
return browser.title();
}).then(function (title) {
assert.equal("jsDay 2013 | The international Javascript Conference", title);
}).fin(function () {
browser.quit();
}).done();
SE Builder
- Open Source
- Graphical tool
- Fast start
- Exports to many languages
Selenium Best Practices
- locators
- spinAssert
- paralleism
- end-to-end checks
Become a Testing Ninja in 5 minutes
Open Source project
GitHub
Travis CI
Sauce Labs
Testing in the mobile era
Want to test native apps?
iOS
UI Automation
Android
UI Automator
Appium FTW!
Testing in the mobile web era
iOS WebDriver
Android WebDriver
Appium (again)
The End
Please contribute!
PROMO CODE: jsday2013 (lowercase)