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

BUG

FIX

BUG

FIX

BUG

FIX

BUG

Automated testing FTW!

What should I test?

Application
Application Module
Application Module
Application Module
Application Module
Not tested
Not tested
Not tested
Not tested
Application
Application Module
Application Module
Application Module
Application Module
Not tested
Not tested
Not tested
Not tested
Application
Application Module
Application Module
Application Module
Application Module
Not tested
Not tested
Not tested
Not tested

Why I need integration tests?

your unit tests do not cover everything

Selenium

What is it?

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();
      
      

Example test - DEMO

SE Builder

SE Builder - Demo

Selenium Best Practices

Become a Testing Ninja in 5 minutes

Open Source project

GitHub

Travis CI

Sauce Labs

Testing Ninja - DEMO

Testing in the mobile era

Want to test native apps?

iOS

UI Automation

Android

UI Automator

Appium FTW!

Android & iOS - DEMO

Testing in the mobile web era

iOS WebDriver

Android WebDriver

Appium (again)

Appium - WEB DEMO

The End

Please contribute!
Sauce Labs <3
PROMO CODE: jsday2013 (lowercase)