SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
iPhone Webdriver in a CI Environment   
           by James Eisenhauer




© 2012 Cambia Health Solutions.
About Me

     James ‘Jim’ Eisenhauer
     Chief Quality Scientist, Hubbub Health
     o      Breaking the web for 17 years….most of the time on purpose
     o      Over educated and certified
     o      Scuba Diving, Traveling & Beer! (not necessarily in that order)
     o      Tech Oregon QA Forum - Board Member
     o      Agile Testing Open NW Conference – Board Member
     o      Co-Founder Portland Selenium Meetup Group


                                  @jameseisenhauer       www.jameseisenhauer.com



© 2012 Cambia Health Solutions.
Hubbub

      Health challenge platform
      deployed on Heroku          +   iPhone App &
                                      mobile web
                                                     +   Ruby on Rails web application
                                                         & REST based API




© 2012 Cambia Health Solutions.
COMING SOON!

          Hubbub Motion™

        Hubbub Motion Kit: Activity Tracker and Base Station

        Players can automatically track their activity
        daily via Hubbub and their phones.
                                                         2. Track   3. Compare
          No data-entry
          No synching
                                           1. Wear
          No charging
          Just moving!




© 2012 Cambia Health Solutions.
Buzzwords Galore!


          A ton of info to cover and could possibly be 5-7 separate future sessions!

           Setting up Selenium Grid/Server
           Installing iWebdriver app on the iPhone Simulator
           Building a Selenium Framework in Ruby
           Setting up Jenkins CI
           Running Selenium Tests when your mobile website changes




© 2012 Cambia Health Solutions
Disclaimer!!


                                 All work done on




                                                    Mileage may vary on other operating systems




© 2012 Cambia Health Solutions
Selenium Grid/Server


   Download here: http://seleniumhq.org/download/

   Good Info here: http://code.google.com/p/selenium/wiki/Grid2

   Start it Up!




      View Grid Console: http://localhost:4444/grid/console




© 2012 Cambia Health Solutions.
iWebdriver


                Buy a Mac
                Install Xcode
                Download the entire Selenium source tree
                Launch Xcode
                Open the iPhone Xcode project found in the Selenium source tree
                Choose build destination – iPhone simulator
                Build App
                Now iWebdriver is installed on your iPhone simulator
                Install on real iPhone?
                Pay $99 for Apple iOS Developer License
                Repeat above & choose your real iPhone as build destination


          All the info is found here: http://code.google.com/p/selenium/wiki/IPhoneDriver


© 2012 Cambia Health Solutions.
iPhoneWebdriverSim

          Find it on my github account:
          https://github.com/jameseisenhauer/iPhoneWebDriverSim




© 2012 Cambia Health Solutions.
iWebdriver-Hooked to the Grid




© 2012 Cambia Health Solutions.
Selenium Framework in Ruby

          Learning Ruby as we go!!! Almost done!!
          Features
          o     Run from rake
          o     Use bundler
          o     Use Page Objects
          o     Run from Jenkins and reported
          o     Parallel running
          o     Each rspec file is a browser session (for authentication)
          o     Default browser - command line different browsers
          o     Mobile run on emulator in CI
          o     Screen shot on errors - shown in Jenkins
          o     Easy change of selenium grid, sauce, etc..
          o     Easy change of it global test URL
          o     Auto retry at least 2x

          See what I have so far at: https://github.com/jameseisenhauer/PDXSeiPhoneDemo
© 2012 Cambia Health Solutions.
Jenkins




          Download here: http://jenkins-ci.org/

          Lots of help here:
          Start/Stop, etc…
          https://wiki.jenkins-
          ci.org/display/JENKINS/Thanks+for+using+OSX+Installer




© 2012 Cambia Health Solutions.
Jenkins



                                                                   Most of the time PERMGEN
                                                                   memory configuration needs
                                                                   increased.
                                                                   defaults write
                                                                   /Library/Preferences/org.jenkins
                                                                   -ci permGen 1024M




                                  After install view: http://localhost:8080

© 2012 Cambia Health Solutions.
Continuous Integration




© 2012 Cambia Health Solutions.
Jenkins


                  https://devcenter.heroku.com/articles/deploy-hooks


                 Simple Ruby on Rails Tutorial
                 http://www.jameseisenhauer.com




© 2012 Cambia Health Solutions.
One More Thing!



                                  Sneak Preview Beta




© 2012 Cambia Health Solutions.
Thank You!!!



                                  @jameseisenhauer   www.jameseisenhauer.com




© 2012 Cambia Health Solutions.

Weitere ähnliche Inhalte

Andere mochten auch

Distribuciones deidad y gym
Distribuciones deidad y gymDistribuciones deidad y gym
Distribuciones deidad y gymsamugarcia
 
Smart Europe ASENORG
Smart Europe ASENORGSmart Europe ASENORG
Smart Europe ASENORGIsabel ST
 
11 AgustíN Cuenca
11 AgustíN Cuenca11 AgustíN Cuenca
11 AgustíN Cuencayoulivek
 
Giới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khí
Giới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khíGiới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khí
Giới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khíHạ Thuỷ Tàu
 
Ruta FibraOptica Telmex R38 Huauchinango - San Diego
Ruta FibraOptica Telmex R38 Huauchinango - San DiegoRuta FibraOptica Telmex R38 Huauchinango - San Diego
Ruta FibraOptica Telmex R38 Huauchinango - San DiegoJaime Villanueva
 
INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...
INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...
INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...CADEX SCZ
 
Cloud Publishing, Content First, HTML Authoring
Cloud Publishing, Content First, HTML AuthoringCloud Publishing, Content First, HTML Authoring
Cloud Publishing, Content First, HTML AuthoringHaeme Ulrich
 
A química dos óleos essenciais no ensino médio
A química dos óleos essenciais no ensino médioA química dos óleos essenciais no ensino médio
A química dos óleos essenciais no ensino médioFrancisco Brito Souza
 
Mecanica automotriz
Mecanica automotriz Mecanica automotriz
Mecanica automotriz Chikii Zaza
 

Andere mochten auch (15)

Distribuciones deidad y gym
Distribuciones deidad y gymDistribuciones deidad y gym
Distribuciones deidad y gym
 
Revista Pro Monte
Revista Pro MonteRevista Pro Monte
Revista Pro Monte
 
Yi mu projects presentation micky peng
Yi mu projects presentation   micky pengYi mu projects presentation   micky peng
Yi mu projects presentation micky peng
 
Smart Europe ASENORG
Smart Europe ASENORGSmart Europe ASENORG
Smart Europe ASENORG
 
Tema 7 Marta Rey
Tema 7 Marta ReyTema 7 Marta Rey
Tema 7 Marta Rey
 
Hall of Fame Wohlen
Hall of Fame WohlenHall of Fame Wohlen
Hall of Fame Wohlen
 
11 AgustíN Cuenca
11 AgustíN Cuenca11 AgustíN Cuenca
11 AgustíN Cuenca
 
Ju On
Ju OnJu On
Ju On
 
Logan
LoganLogan
Logan
 
Giới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khí
Giới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khíGiới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khí
Giới thiệu Phao túi khí và quy trình hạ thuỷ tàu bằng túi khí
 
Ruta FibraOptica Telmex R38 Huauchinango - San Diego
Ruta FibraOptica Telmex R38 Huauchinango - San DiegoRuta FibraOptica Telmex R38 Huauchinango - San Diego
Ruta FibraOptica Telmex R38 Huauchinango - San Diego
 
INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...
INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...
INTEGRACIÓN FÉRREA INTERNA E INTEROCEÁNICA - CORREDOR FERROVIARIO BIOCEÁNICO ...
 
Cloud Publishing, Content First, HTML Authoring
Cloud Publishing, Content First, HTML AuthoringCloud Publishing, Content First, HTML Authoring
Cloud Publishing, Content First, HTML Authoring
 
A química dos óleos essenciais no ensino médio
A química dos óleos essenciais no ensino médioA química dos óleos essenciais no ensino médio
A química dos óleos essenciais no ensino médio
 
Mecanica automotriz
Mecanica automotriz Mecanica automotriz
Mecanica automotriz
 

Ähnlich wie iPhone Webdriver in CI

Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Puppet
 
Selenium Overview - By Adam Carmi
Selenium Overview - By Adam CarmiSelenium Overview - By Adam Carmi
Selenium Overview - By Adam CarmiApplitools
 
Android training in Noida
Android training in NoidaAndroid training in Noida
Android training in NoidaSeoClass
 
Pdx Se Intro To Se
Pdx Se Intro To SePdx Se Intro To Se
Pdx Se Intro To SeAn Doan
 
Basics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote ControlBasics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote Controlusha kannappan
 
An Overview of Selenium
An Overview of SeleniumAn Overview of Selenium
An Overview of Seleniumadamcarmi
 
From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...
From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...
From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...CloudBees
 
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...Edureka!
 
Play Framework: Intro & High-Level Overview
Play Framework: Intro & High-Level OverviewPlay Framework: Intro & High-Level Overview
Play Framework: Intro & High-Level OverviewJosh Padnick
 
Mobile developments at eXo
Mobile developments at eXoMobile developments at eXo
Mobile developments at eXoArnaud Héritier
 
Selenium introduction
Selenium introductionSelenium introduction
Selenium introductionHGanesh
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumSelenium Cucumber
 
AliExpress’ Way to Microservices - microXchg 2017
AliExpress’ Way to Microservices  - microXchg 2017AliExpress’ Way to Microservices  - microXchg 2017
AliExpress’ Way to Microservices - microXchg 2017juvenxu
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile developmentMihai Corlan
 
selenium-2-mobile-web-testing
selenium-2-mobile-web-testingselenium-2-mobile-web-testing
selenium-2-mobile-web-testinghugs
 
Introduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeopleIntroduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeopleSpringPeople
 

Ähnlich wie iPhone Webdriver in CI (20)

Selenium basic
Selenium basicSelenium basic
Selenium basic
 
Selenium
SeleniumSelenium
Selenium
 
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
 
Selenium Overview - By Adam Carmi
Selenium Overview - By Adam CarmiSelenium Overview - By Adam Carmi
Selenium Overview - By Adam Carmi
 
Android training in Noida
Android training in NoidaAndroid training in Noida
Android training in Noida
 
Pdx Se Intro To Se
Pdx Se Intro To SePdx Se Intro To Se
Pdx Se Intro To Se
 
Basics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote ControlBasics of Selenium IDE,Core, Remote Control
Basics of Selenium IDE,Core, Remote Control
 
An Overview of Selenium
An Overview of SeleniumAn Overview of Selenium
An Overview of Selenium
 
From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...
From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...
From Continuous Integration to Continuous Delivery with Jenkins - javaland.de...
 
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
How to Write & Run a Test Case in Selenium | Selenium Tutorial | Selenium Tra...
 
Play Framework: Intro & High-Level Overview
Play Framework: Intro & High-Level OverviewPlay Framework: Intro & High-Level Overview
Play Framework: Intro & High-Level Overview
 
Mobile developments at eXo
Mobile developments at eXoMobile developments at eXo
Mobile developments at eXo
 
Selenium introduction
Selenium introductionSelenium introduction
Selenium introduction
 
BCS Selenium Workshop
BCS Selenium WorkshopBCS Selenium Workshop
BCS Selenium Workshop
 
Mobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appiumMobile automation using selenium cucumber & appium
Mobile automation using selenium cucumber & appium
 
AliExpress’ Way to Microservices - microXchg 2017
AliExpress’ Way to Microservices  - microXchg 2017AliExpress’ Way to Microservices  - microXchg 2017
AliExpress’ Way to Microservices - microXchg 2017
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile development
 
Devops
DevopsDevops
Devops
 
selenium-2-mobile-web-testing
selenium-2-mobile-web-testingselenium-2-mobile-web-testing
selenium-2-mobile-web-testing
 
Introduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeopleIntroduction to Selenium Webdriver - SpringPeople
Introduction to Selenium Webdriver - SpringPeople
 

iPhone Webdriver in CI

  • 1. iPhone Webdriver in a CI Environment  by James Eisenhauer © 2012 Cambia Health Solutions.
  • 2. About Me James ‘Jim’ Eisenhauer Chief Quality Scientist, Hubbub Health o Breaking the web for 17 years….most of the time on purpose o Over educated and certified o Scuba Diving, Traveling & Beer! (not necessarily in that order) o Tech Oregon QA Forum - Board Member o Agile Testing Open NW Conference – Board Member o Co-Founder Portland Selenium Meetup Group @jameseisenhauer www.jameseisenhauer.com © 2012 Cambia Health Solutions.
  • 3. Hubbub Health challenge platform deployed on Heroku + iPhone App & mobile web + Ruby on Rails web application & REST based API © 2012 Cambia Health Solutions.
  • 4. COMING SOON! Hubbub Motion™ Hubbub Motion Kit: Activity Tracker and Base Station Players can automatically track their activity daily via Hubbub and their phones. 2. Track 3. Compare No data-entry No synching 1. Wear No charging Just moving! © 2012 Cambia Health Solutions.
  • 5. Buzzwords Galore! A ton of info to cover and could possibly be 5-7 separate future sessions!  Setting up Selenium Grid/Server  Installing iWebdriver app on the iPhone Simulator  Building a Selenium Framework in Ruby  Setting up Jenkins CI  Running Selenium Tests when your mobile website changes © 2012 Cambia Health Solutions
  • 6. Disclaimer!! All work done on Mileage may vary on other operating systems © 2012 Cambia Health Solutions
  • 7. Selenium Grid/Server Download here: http://seleniumhq.org/download/ Good Info here: http://code.google.com/p/selenium/wiki/Grid2 Start it Up! View Grid Console: http://localhost:4444/grid/console © 2012 Cambia Health Solutions.
  • 8. iWebdriver  Buy a Mac  Install Xcode  Download the entire Selenium source tree  Launch Xcode  Open the iPhone Xcode project found in the Selenium source tree  Choose build destination – iPhone simulator  Build App  Now iWebdriver is installed on your iPhone simulator  Install on real iPhone?  Pay $99 for Apple iOS Developer License  Repeat above & choose your real iPhone as build destination All the info is found here: http://code.google.com/p/selenium/wiki/IPhoneDriver © 2012 Cambia Health Solutions.
  • 9. iPhoneWebdriverSim Find it on my github account: https://github.com/jameseisenhauer/iPhoneWebDriverSim © 2012 Cambia Health Solutions.
  • 10. iWebdriver-Hooked to the Grid © 2012 Cambia Health Solutions.
  • 11. Selenium Framework in Ruby Learning Ruby as we go!!! Almost done!! Features o Run from rake o Use bundler o Use Page Objects o Run from Jenkins and reported o Parallel running o Each rspec file is a browser session (for authentication) o Default browser - command line different browsers o Mobile run on emulator in CI o Screen shot on errors - shown in Jenkins o Easy change of selenium grid, sauce, etc.. o Easy change of it global test URL o Auto retry at least 2x See what I have so far at: https://github.com/jameseisenhauer/PDXSeiPhoneDemo © 2012 Cambia Health Solutions.
  • 12. Jenkins Download here: http://jenkins-ci.org/ Lots of help here: Start/Stop, etc… https://wiki.jenkins- ci.org/display/JENKINS/Thanks+for+using+OSX+Installer © 2012 Cambia Health Solutions.
  • 13. Jenkins Most of the time PERMGEN memory configuration needs increased. defaults write /Library/Preferences/org.jenkins -ci permGen 1024M After install view: http://localhost:8080 © 2012 Cambia Health Solutions.
  • 14. Continuous Integration © 2012 Cambia Health Solutions.
  • 15. Jenkins https://devcenter.heroku.com/articles/deploy-hooks Simple Ruby on Rails Tutorial http://www.jameseisenhauer.com © 2012 Cambia Health Solutions.
  • 16. One More Thing! Sneak Preview Beta © 2012 Cambia Health Solutions.
  • 17. Thank You!!! @jameseisenhauer www.jameseisenhauer.com © 2012 Cambia Health Solutions.