berlin.js meetup

21
@admc State of the Automation Tuesday, April 24, 12

Upload: adam-christian

Post on 11-May-2015

1.075 views

Category:

Technology


3 download

DESCRIPTION

Made some improvements over my HH.JS slides

TRANSCRIPT

Page 1: Berlin.JS Meetup

@admc

State of the Automation

Tuesday, April 24, 12

Page 2: Berlin.JS Meetup

Ich: github.com/admc

• I’m a web developer• OSAF 2007, released Windmill Project• Slide 2008, released WatiN, FlexPilot• Mozilla 2009, released MozMill• Sauce Labs 2010 - 2012

• Selenium Builder• Jellyfish• WD, WD-Candy

Tuesday, April 24, 12

Page 3: Berlin.JS Meetup

Introduction

Thanks for having us!

You may know all of this, already.

Conclusions from years of pain.

I hope you find something new to take away.

Tuesday, April 24, 12

Page 4: Berlin.JS Meetup

The HistorySelenium Core - 2004

Windmill - 2007

Node.JS - Appears at JS.EU - 2009

Soda - Node drives Selenium 1!

JSDOM, Phantom, Zombie, Tobi - 2010

WebDriver - Starts talking about mobile

WebDriver + Selenium = Selenium 2

Tuesday, April 24, 12

Page 5: Berlin.JS Meetup

Test Stack

VowsMocha

QUnitJasmine

Zombie, Phantom, Tobi

WebDriver: wd-candy (wd pronounced wood), WebDriverJS, webdriver-js

Manual, otherwise still not impressed.

Tuesday, April 24, 12

Page 6: Berlin.JS Meetup

The Holy Grail

Tuesday, April 24, 12

Page 7: Berlin.JS Meetup

Do what works

• Immediate value• Easy for developers• Some is better than none

Tuesday, April 24, 12

Page 8: Berlin.JS Meetup

6 Commandments of test

• Only run after passing headless• Small succinct test cases• No test case dependencies• Abstract fragile locators• Parallelize test runs to the max• Focus on the money path

Tuesday, April 24, 12

Page 9: Berlin.JS Meetup

What do I test?

• Metrics for pages (Mixpanel?)• Analytics for browsers (Google?)• Money path!

Tuesday, April 24, 12

Page 10: Berlin.JS Meetup

Evangelism

• Your testing work is never done• Selenium Conf 2011 - Automated Battle Scars

http://youtu.be/vZTi02tSs_M

Tuesday, April 24, 12

Page 11: Berlin.JS Meetup

Continuous Integration is HOT

Jenkins (commercial: cloudbees)

Travis-CI: OSS Only

Waterfall test flow, fail early

Only SMS on critical

Incredible speed up in development

Plugins for Selenium/WebDriver

Tuesday, April 24, 12

Page 12: Berlin.JS Meetup

WebDriver (Se 2)

W3C Standard

Name situation

Selenium Conference: Community

Does web automation amazingly

Cares about mobile

Selenium Grid

Tuesday, April 24, 12

Page 13: Berlin.JS Meetup

All the browsers

We’re just getting started..

We accidentally..

Tuesday, April 24, 12

Page 14: Berlin.JS Meetup

Mobile Native

• A work in progress• Searching for a community• NativeDriver -- awesome, discontinued :-(• calabash -- appears to have momentum

Tuesday, April 24, 12

Page 15: Berlin.JS Meetup

Future

Full mobile web coverage as part of Selenium

Faster Android emulation solution

Faster browser testing due to browser side optimizations

Blessed mobile native solution with WebDriver API’s

Robots.

Tuesday, April 24, 12

Page 16: Berlin.JS Meetup

Sauce LabsOpen Source projects!

Se Builder -> Node Selenium Libraries

Cleaner integration: QUnit, Jasmine

Integration with Selenium Grid

Better ways to • debug your JS via the cloud• profile your JS on the cloud

Tuesday, April 24, 12

Page 17: Berlin.JS Meetup

Seriously, Robots

http://bitbeam.orgTuesday, April 24, 12

Page 18: Berlin.JS Meetup

The Clouds• General

• EC2, RackSpace, MacMiniCloud etc.• Specific

• Sauce OnDemand - Functional, Client JS Unit• Testling - Client JS Unit• Browser Stack - Client JS Unit• TestBot - Client Functional

Tuesday, April 24, 12

Page 19: Berlin.JS Meetup

Vielen Dank Berlin.JS!

Thanks Berlin.JS for hosting!

Keeping the JS Community growing in .de

Allowing us to come talk to you!

Tuesday, April 24, 12

Page 20: Berlin.JS Meetup

LinksMocha: http://visionmedia.github.com/mocha/Calabash: https://github.com/calabash/Selenium Grid: http://selenium-grid.seleniumhq.org/WD: https://github.com/admc/wdWD-Candy: https://github.com/admc/wd-candyVows: http://vowsjs.org/QUnit: http://docs.jquery.com/QunitWebDriverJS: http://code.google.com/p/selenium/wiki/WebDriverJswebdriver-js: https://github.com/dmachi/webdriver-jsSelenium/WebDriver: http://seleniumhq.org/Zombie.JS: https://github.com/assaf/zombieTobi: https://github.com/learnboost/tobiSe-Builder: http://www.sebuilder.com

Tuesday, April 24, 12

Page 21: Berlin.JS Meetup

Q & A

Bierzeit?Tuesday, April 24, 12