SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
Daniel Knott
XING AG
@dnlkntt
http://www.adventuresinqa.com
Agile Testautomatisierung
im XING Mobile Team
Daniel Knott
Team Lead Quality Assurance
@dnlkntt
daniel.knott@xing.com
Daniel Knott hat einen technischen Hintergrund in verschiedenen Programmiersprachen und Software Quality
Assurance Tools. Nach seiner Ausbildung bei der IBM Deutschland GmbH studierte er an der Fachhochschule
Wiesbaden Informatik mit dem Schwerpunkt Softwarequalitätssicherung. Seit 2010 arbeitet Daniel Knott bei der
XING AG in Hamburg. In verschiedenen agilen Projekten (XING Suche, XING Empfehlungen) war er verantwortlich
für das Testmanagement, für die Ausführung der Testfälle sowie für die Testautomatisierung.
Zur Zeit arbeitet Daniel Knott als Team Lead Quality Assurance im XING Mobile- und API Team. Als Team Lead ist
er für die Qualitätssicherung der XING Android App, iPhone App, touch.xing.com Web App, Windows Phone 7 App,
BlackBerry App sowie für die XING Public API verantwortlich. Neben seiner Rolle als Team Lead, ist er für das
Testmanagement und die Testautomatisierung der XING Android und iPhone App zuständig. Zusätzlich zu seiner
Tätigkeit bei der XING AG ist Daniel ein Sprecher auf verschiedenen agilen Konferenzen.
Sein XING Profil https://www.xing.com/profile/Daniel_Knott.
Sein Blog http://www.adventuresinqa.com
1.  XING AG
2.  Agile Entwicklung der XING Mobile Apps
3.  Herausforderungen in der mobilen Entwicklung
4.  Werkzeuge
5.  Best Practices
Inhaltsverzeichnis
2Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
3Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
XING AG
§  Gegründet 2003 als OpenBC
§  Seit 2006 XING AG
§  > 12.4 Mio. Mitglieder
§  ~ 25% Mobile Traffic
§  519 Mitarbeiter
4Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Agile Entwicklung der XING
Mobile Apps
Agile Entwicklung der XING Mobile Apps
5Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Entwickler
Agile Entwicklung der XING Mobile Apps
6Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Selected	
  Backlog	
  
Product	
  Backlog	
  
Feature/ Discovery
Es2ma2on	
   Developing	
   Tes2ng	
  
Internal	
  Beta	
  Phase	
  
7Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Herausforderungen
in der mobilen
Entwicklung
Herausforderungen – Plattformen
8Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Herausforderungen – Plattformen
9Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Verschiedene	
  Hersteller	
  
Verschiedene	
  User	
  Interfaces	
  
Unterschiedliche	
  Hardware	
  
Viele	
  So5ware-­‐Versionen	
  
Ein	
  Hersteller	
  
Unterschiedliche	
  Hardware	
  
Viele	
  So5ware-­‐Versionen	
  
Herausforderungen – I18N
10Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Herausforderungen – Datennetze
11Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
12Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Werkzeuge
Werkzeuge – Robotium
13Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Black	
  Box	
  Test	
  Tool	
  
Basiert	
  auf	
  Java	
  und	
  JUnit	
  3	
  
Support	
  für	
  Android	
  1.6	
  –	
  4.x	
  
Simuliert	
  User	
  InteracIon	
  
Einfacher	
  AuJau	
  
Device	
  &	
  Simulator	
  
Testet	
  gegen	
  APK	
  Datei	
  
Werkzeuge – Robotium
14Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
	
  public	
  void	
  testLoginFailed()	
  throws	
  Exception	
  {	
  
	
  
	
  solo.enterText(0,	
  “wrongusername”);	
  
	
  solo.enterText(1,	
  “wrongpassword”);	
  
	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));	
  
	
  	
  	
  
	
  solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",	
  2000);	
  
	
  	
  	
  	
  assertTrue("ERROR:	
  Error	
  message	
  is	
  not	
  shown",	
  	
  
	
  	
  	
  	
  verifyTextIsPresent(solo.getString(	
  
	
  	
  	
  	
  	
  	
  	
  com.xing.android.R.string.dialog_error_body)));	
  
	
  	
  	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));	
  
	
  }	
  
Werkzeuge – Robotium
15Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
	
  public	
  void	
  testLoginFailed()	
  throws	
  Exception	
  {	
  
	
  
	
  solo.enterText(0,	
  “wrongusername”);	
  
	
  solo.enterText(1,	
  “wrongpassword”);	
  
	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));	
  
	
  	
  	
  
	
  solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",	
  2000);	
  
	
  	
  	
  	
  assertTrue("ERROR:	
  Error	
  message	
  is	
  not	
  shown",	
  	
  
	
  	
  	
  	
  verifyTextIsPresent(solo.getString(	
  
	
  	
  	
  	
  	
  	
  	
  com.xing.android.R.string.dialog_error_body)));	
  
	
  	
  	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));	
  
	
  }	
  
Werkzeuge – Robotium
16Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
	
  public	
  void	
  testLoginFailed()	
  throws	
  Exception	
  {	
  
	
  
	
  solo.enterText(0,	
  “wrongusername”);	
  
	
  solo.enterText(1,	
  “wrongpassword”);	
  
	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));	
  
	
  	
  	
  
	
  solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",	
  2000);	
  
	
  	
  	
  	
  assertTrue("ERROR:	
  Error	
  message	
  is	
  not	
  shown",	
  	
  
	
  	
  	
  	
  verifyTextIsPresent(solo.getString(	
  
	
  	
  	
  	
  	
  	
  	
  com.xing.android.R.string.dialog_error_body)));	
  
	
  	
  	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));	
  
	
  }	
  
Werkzeuge – Robotium
17Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
	
  public	
  void	
  testLoginFailed()	
  throws	
  Exception	
  {	
  
	
  
	
  solo.enterText(0,	
  “wrongusername”);	
  
	
  solo.enterText(1,	
  “wrongpassword”);	
  
	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));	
  
	
  	
  	
  
	
  solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",	
  2000);	
  
	
  	
  	
  	
  assertTrue("ERROR:	
  Error	
  message	
  is	
  not	
  shown",	
  	
  
	
  	
  	
  	
  verifyTextIsPresent(solo.getString(	
  
	
  	
  	
  	
  	
  	
  	
  com.xing.android.R.string.dialog_error_body)));	
  
	
  	
  	
  solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));	
  
	
  }	
  
Werkzeuge – Robotium
18Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Werkzeuge – KIF (Keep It Functional)
19Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Grey	
  Box	
  Test	
  Tool	
  
ObjecIve	
  C	
  
Device	
  &	
  Simulator	
  
Simuliert	
  User	
  InteracIon	
  
Sehr	
  schnell	
  &	
  CI	
  IntegraIon	
  
Werkzeuge – KIF (Keep It Functional)
20Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
21Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Best
Practices
Best Practices
22Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Kunden	
  kennen!	
  
TestautomaIsierung	
  schreiben	
  
Werkzeuge	
  Kombinieren	
  
Crowd-­‐/	
  Cloud	
  TesIng	
  nutzen	
  
Nutzer	
  und	
  den	
  Markt	
  beobachten	
  
Testcode	
  und	
  Anwendung	
  in	
  gleicher	
  Sprache	
  
Versionskontrolle	
  nutzen	
  
ConInuous	
  IntegraIon	
  nutzen	
  
Mobile	
  Simulatoren	
  meiden	
  
Vielen Dank
für Ihre
Aufmerksamkeit!
The professional network
www.xing.com
Daniel Knott
Team Lead Quality Assurance
daniel.knott@xing.com
@dnlkntt
http://www.adventuresinqa.com/
23Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
Links & Referenzen
24Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
§  Robotium [http://code.google.com/p/robotium/]
§  KIF [http://corner.squareup.com/2011/07/ios-integration-testing.html]
§  WaxSim [https://github.com/square/waxsim]
§  Hockeykit [http://hockeykit.net/]
§  Twitter Logo [https://si0.twimg.com/a/1318896278/images/logos/twitter_newbird_white.png]
§  Businesswoman [http://www.istockphoto.com/stock-photo-16742115-businesswoman-
holding-a-blank-sign-isolated.php]
§  Letters, by davide vizzini limbte [http://www.flickr.com/photos/limbte/4007115435/]
§  Little Dish, by Juan de Dios Santander Vela [http://www.flickr.com/photos/juandesant/
209098053]
§  App Store Logo [http://upload.wikimedia.org/wikipedia/de/0/05/App-Store-Logo.png]
§  Robot [http://www.nassaulibrary.org/eastrock/robot.jpg]
§  Robotium Logo [http://f.hatena.ne.jp/images/fotolife/r/re_shikajiro/20110601/
20110601224550.jpg]
§  Square Logo [http://c580513.r13.cf2.rackcdn.com/wp-content/uploads/2011/07/Square_Logo
_Landscape1-500x214.png?9d7bd4]
Links & Referenzen
25Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
§  Apple Logo [http://www.lte-tablets.de/files/2011/08/apple_logo.jpg]
§  Android Logo [http://www.android.com/media/wallpaper/gif/android_logo.gif]
§  Windows Phone Logo [http://upload.wikimedia.org/wikipedia/de/thumb/2/23/Windows_
Phone_Logo.svg/500px-Windows_Phone_Logo.svg.png]
§  Blackberry Logo [http://us.blackberry.com/legal/bblogo_gray_003.jpg]
§  WebOS Logo [http://upload.wikimedia.org/wikipedia/en/e/e0/WebOS_logo.svg]
§  Symbian Logo [http://upload.wikimedia.org/wikipedia/de/thumb/c/c8/Symbian_OS_
logo.svg/686px-Symbian_OS_logo.svg.png]
§  Google Play Logo [http://www.android.com/images/brand/android_app_on_play_logo_small.png]
§  Apple App Store Logo [http://www.inext.me/wp-content/uploads/2011/09/
app-store_logo.png]
§  Windows Market Place Logo [http://modmyi.com/attachments/forums/iphone-4-
new-skins-themes-launches/483774d1290368882-release-windows-phone-7-hd-market-place-2x.png]
§  Sogeti Logo [http://www.sogeti.com/upload/Quick%20access/Media/Logo_red_whiteBG_OK.gif]

Weitere ähnliche Inhalte

Ähnlich wie Agile Mobile Test Automatisierung

vi knallgrau Mobile Nutzung: Website vs. App
vi knallgrau Mobile Nutzung: Website vs. Appvi knallgrau Mobile Nutzung: Website vs. App
vi knallgrau Mobile Nutzung: Website vs. Appvi knallgrau
 
Dominik Helleberg Widgets Wjax
Dominik Helleberg Widgets WjaxDominik Helleberg Widgets Wjax
Dominik Helleberg Widgets WjaxDominik Helleberg
 
OnMobile Befragung - AppRadar
OnMobile Befragung - AppRadarOnMobile Befragung - AppRadar
OnMobile Befragung - AppRadaraperto move
 
Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...Bokowsky + Laymann GmbH
 
Itbetw apertomove gessenhardt
Itbetw apertomove gessenhardtItbetw apertomove gessenhardt
Itbetw apertomove gessenhardtITB Berlin
 
Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...Bokowsky + Laymann GmbH
 
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Nico Orschel
 
Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...
Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...
Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...FLYACTS GmbH
 
Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...
Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...
Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...Marc Müller
 
Performance Day 2012 Performance on the Run
Performance Day 2012 Performance on the RunPerformance Day 2012 Performance on the Run
Performance Day 2012 Performance on the RunMarc Rieger
 
Hybrid-Apps 2.0 - Status Quo & Performance
Hybrid-Apps 2.0 - Status Quo & PerformanceHybrid-Apps 2.0 - Status Quo & Performance
Hybrid-Apps 2.0 - Status Quo & PerformanceFLYACTS GmbH
 
Vortrag zu Apps AppPlusMobile, Kreativamt Gladbeck
Vortrag zu Apps AppPlusMobile, Kreativamt GladbeckVortrag zu Apps AppPlusMobile, Kreativamt Gladbeck
Vortrag zu Apps AppPlusMobile, Kreativamt GladbeckAppPlusMobile.info
 
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis Intland Software GmbH
 
Vorlesung Dez 2009 Prod Dev V2.0
Vorlesung Dez 2009 Prod Dev V2.0Vorlesung Dez 2009 Prod Dev V2.0
Vorlesung Dez 2009 Prod Dev V2.0danielholle
 
Voice Assistants: Neuigkeiten von Alexa und Google Home
Voice Assistants: Neuigkeiten von Alexa und Google HomeVoice Assistants: Neuigkeiten von Alexa und Google Home
Voice Assistants: Neuigkeiten von Alexa und Google Homeinovex GmbH
 
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...Oliver Busse
 

Ähnlich wie Agile Mobile Test Automatisierung (20)

Phonegap App Entwicklung
Phonegap App EntwicklungPhonegap App Entwicklung
Phonegap App Entwicklung
 
vi knallgrau Mobile Nutzung: Website vs. App
vi knallgrau Mobile Nutzung: Website vs. Appvi knallgrau Mobile Nutzung: Website vs. App
vi knallgrau Mobile Nutzung: Website vs. App
 
Dominik Helleberg Widgets Wjax
Dominik Helleberg Widgets WjaxDominik Helleberg Widgets Wjax
Dominik Helleberg Widgets Wjax
 
Agile BI in der Praxis - Agiles Testen
Agile BI in der Praxis - Agiles TestenAgile BI in der Praxis - Agiles Testen
Agile BI in der Praxis - Agiles Testen
 
OnMobile Befragung - AppRadar
OnMobile Befragung - AppRadarOnMobile Befragung - AppRadar
OnMobile Befragung - AppRadar
 
Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile Produktentwicklung: Konzeption, Design, Entwicklung,...
 
Itbetw apertomove gessenhardt
Itbetw apertomove gessenhardtItbetw apertomove gessenhardt
Itbetw apertomove gessenhardt
 
Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...
Einführung in die Mobile-Produktentwicklung: Konzeption, Design, Entwicklung,...
 
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
Mobile Applikationen: Entwicklung, Rollout, Wartung - Tipps und Tricks für di...
 
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
Testmanagement mit Visual Studio 2013 / CodedUI / Neues aus der Produktgruppe...
 
Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...
Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...
Praxisleitfaden für Business Apps - Potenziale, Technologien, Kosten, Vorbere...
 
Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...
Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...
Basta Spring 2017 - DevOps: Automatisieren der Deployment-Prozesse mit Te...
 
Phonegap Agentur
Phonegap AgenturPhonegap Agentur
Phonegap Agentur
 
Performance Day 2012 Performance on the Run
Performance Day 2012 Performance on the RunPerformance Day 2012 Performance on the Run
Performance Day 2012 Performance on the Run
 
Hybrid-Apps 2.0 - Status Quo & Performance
Hybrid-Apps 2.0 - Status Quo & PerformanceHybrid-Apps 2.0 - Status Quo & Performance
Hybrid-Apps 2.0 - Status Quo & Performance
 
Vortrag zu Apps AppPlusMobile, Kreativamt Gladbeck
Vortrag zu Apps AppPlusMobile, Kreativamt GladbeckVortrag zu Apps AppPlusMobile, Kreativamt Gladbeck
Vortrag zu Apps AppPlusMobile, Kreativamt Gladbeck
 
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
Eclipse DVCS-Day: eGit, Git, Mercurial-Anwendungen in der Praxis
 
Vorlesung Dez 2009 Prod Dev V2.0
Vorlesung Dez 2009 Prod Dev V2.0Vorlesung Dez 2009 Prod Dev V2.0
Vorlesung Dez 2009 Prod Dev V2.0
 
Voice Assistants: Neuigkeiten von Alexa und Google Home
Voice Assistants: Neuigkeiten von Alexa und Google HomeVoice Assistants: Neuigkeiten von Alexa und Google Home
Voice Assistants: Neuigkeiten von Alexa und Google Home
 
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
DNUG 38: "Einen Rahmen schaffen: Vorteile durch Frameworks in der Domino-Webe...
 

Mehr von Daniel Knott

How To Grow Your Testing Team Members
How To Grow Your Testing Team MembersHow To Grow Your Testing Team Members
How To Grow Your Testing Team MembersDaniel Knott
 
Mobile Test Management Done Right
Mobile Test Management Done RightMobile Test Management Done Right
Mobile Test Management Done RightDaniel Knott
 
Softskills Software Testers
Softskills Software TestersSoftskills Software Testers
Softskills Software TestersDaniel Knott
 
From Testing to Product Management
From Testing to Product ManagementFrom Testing to Product Management
From Testing to Product ManagementDaniel Knott
 
Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012Daniel Knott
 
Challenges in mobile test automation - 2011
Challenges in mobile test automation - 2011Challenges in mobile test automation - 2011
Challenges in mobile test automation - 2011Daniel Knott
 
How to scale mobile testing across several teams
How to scale mobile testing across several teamsHow to scale mobile testing across several teams
How to scale mobile testing across several teamsDaniel Knott
 
10 Mobile App Testing Mistakes To Avoid by Daniel Knott
10 Mobile App Testing Mistakes To Avoid by Daniel Knott10 Mobile App Testing Mistakes To Avoid by Daniel Knott
10 Mobile App Testing Mistakes To Avoid by Daniel KnottDaniel Knott
 
How to Scale Mobile Testing Across Several Teams
How to Scale Mobile Testing Across Several TeamsHow to Scale Mobile Testing Across Several Teams
How to Scale Mobile Testing Across Several TeamsDaniel Knott
 
Mobile testing @ XING - Ist der Release Train pünktlich
Mobile testing @ XING - Ist der Release Train pünktlichMobile testing @ XING - Ist der Release Train pünktlich
Mobile testing @ XING - Ist der Release Train pünktlichDaniel Knott
 
Mobile testing @ stughh
Mobile testing @ stughhMobile testing @ stughh
Mobile testing @ stughhDaniel Knott
 
8 Jahre Agiles Testen - Was kommt jetzt?
8 Jahre Agiles Testen - Was kommt jetzt?8 Jahre Agiles Testen - Was kommt jetzt?
8 Jahre Agiles Testen - Was kommt jetzt?Daniel Knott
 
Hands-On Mobile App Testing
Hands-On Mobile App TestingHands-On Mobile App Testing
Hands-On Mobile App TestingDaniel Knott
 
How to Break your App - Workshop - Testbash 2015
How to Break your App - Workshop - Testbash 2015How to Break your App - Workshop - Testbash 2015
How to Break your App - Workshop - Testbash 2015Daniel Knott
 
How to Break your App - Best Practices in Mobile App Testing
How to Break your App - Best Practices in Mobile App TestingHow to Break your App - Best Practices in Mobile App Testing
How to Break your App - Best Practices in Mobile App TestingDaniel Knott
 
Best Practices in Mobile App Testing @STUGRM
Best Practices in Mobile App Testing @STUGRMBest Practices in Mobile App Testing @STUGRM
Best Practices in Mobile App Testing @STUGRMDaniel Knott
 

Mehr von Daniel Knott (17)

Remote Leadership
Remote LeadershipRemote Leadership
Remote Leadership
 
How To Grow Your Testing Team Members
How To Grow Your Testing Team MembersHow To Grow Your Testing Team Members
How To Grow Your Testing Team Members
 
Mobile Test Management Done Right
Mobile Test Management Done RightMobile Test Management Done Right
Mobile Test Management Done Right
 
Softskills Software Testers
Softskills Software TestersSoftskills Software Testers
Softskills Software Testers
 
From Testing to Product Management
From Testing to Product ManagementFrom Testing to Product Management
From Testing to Product Management
 
Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012Mobile App Testing ScanAgile 2012
Mobile App Testing ScanAgile 2012
 
Challenges in mobile test automation - 2011
Challenges in mobile test automation - 2011Challenges in mobile test automation - 2011
Challenges in mobile test automation - 2011
 
How to scale mobile testing across several teams
How to scale mobile testing across several teamsHow to scale mobile testing across several teams
How to scale mobile testing across several teams
 
10 Mobile App Testing Mistakes To Avoid by Daniel Knott
10 Mobile App Testing Mistakes To Avoid by Daniel Knott10 Mobile App Testing Mistakes To Avoid by Daniel Knott
10 Mobile App Testing Mistakes To Avoid by Daniel Knott
 
How to Scale Mobile Testing Across Several Teams
How to Scale Mobile Testing Across Several TeamsHow to Scale Mobile Testing Across Several Teams
How to Scale Mobile Testing Across Several Teams
 
Mobile testing @ XING - Ist der Release Train pünktlich
Mobile testing @ XING - Ist der Release Train pünktlichMobile testing @ XING - Ist der Release Train pünktlich
Mobile testing @ XING - Ist der Release Train pünktlich
 
Mobile testing @ stughh
Mobile testing @ stughhMobile testing @ stughh
Mobile testing @ stughh
 
8 Jahre Agiles Testen - Was kommt jetzt?
8 Jahre Agiles Testen - Was kommt jetzt?8 Jahre Agiles Testen - Was kommt jetzt?
8 Jahre Agiles Testen - Was kommt jetzt?
 
Hands-On Mobile App Testing
Hands-On Mobile App TestingHands-On Mobile App Testing
Hands-On Mobile App Testing
 
How to Break your App - Workshop - Testbash 2015
How to Break your App - Workshop - Testbash 2015How to Break your App - Workshop - Testbash 2015
How to Break your App - Workshop - Testbash 2015
 
How to Break your App - Best Practices in Mobile App Testing
How to Break your App - Best Practices in Mobile App TestingHow to Break your App - Best Practices in Mobile App Testing
How to Break your App - Best Practices in Mobile App Testing
 
Best Practices in Mobile App Testing @STUGRM
Best Practices in Mobile App Testing @STUGRMBest Practices in Mobile App Testing @STUGRM
Best Practices in Mobile App Testing @STUGRM
 

Agile Mobile Test Automatisierung

  • 2. Daniel Knott Team Lead Quality Assurance @dnlkntt daniel.knott@xing.com Daniel Knott hat einen technischen Hintergrund in verschiedenen Programmiersprachen und Software Quality Assurance Tools. Nach seiner Ausbildung bei der IBM Deutschland GmbH studierte er an der Fachhochschule Wiesbaden Informatik mit dem Schwerpunkt Softwarequalitätssicherung. Seit 2010 arbeitet Daniel Knott bei der XING AG in Hamburg. In verschiedenen agilen Projekten (XING Suche, XING Empfehlungen) war er verantwortlich für das Testmanagement, für die Ausführung der Testfälle sowie für die Testautomatisierung. Zur Zeit arbeitet Daniel Knott als Team Lead Quality Assurance im XING Mobile- und API Team. Als Team Lead ist er für die Qualitätssicherung der XING Android App, iPhone App, touch.xing.com Web App, Windows Phone 7 App, BlackBerry App sowie für die XING Public API verantwortlich. Neben seiner Rolle als Team Lead, ist er für das Testmanagement und die Testautomatisierung der XING Android und iPhone App zuständig. Zusätzlich zu seiner Tätigkeit bei der XING AG ist Daniel ein Sprecher auf verschiedenen agilen Konferenzen. Sein XING Profil https://www.xing.com/profile/Daniel_Knott. Sein Blog http://www.adventuresinqa.com
  • 3. 1.  XING AG 2.  Agile Entwicklung der XING Mobile Apps 3.  Herausforderungen in der mobilen Entwicklung 4.  Werkzeuge 5.  Best Practices Inhaltsverzeichnis 2Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 4. 3Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 XING AG §  Gegründet 2003 als OpenBC §  Seit 2006 XING AG §  > 12.4 Mio. Mitglieder §  ~ 25% Mobile Traffic §  519 Mitarbeiter
  • 5. 4Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Agile Entwicklung der XING Mobile Apps
  • 6. Agile Entwicklung der XING Mobile Apps 5Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Entwickler
  • 7. Agile Entwicklung der XING Mobile Apps 6Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Selected  Backlog   Product  Backlog   Feature/ Discovery Es2ma2on   Developing   Tes2ng   Internal  Beta  Phase  
  • 8. 7Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Herausforderungen in der mobilen Entwicklung
  • 9. Herausforderungen – Plattformen 8Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 10. Herausforderungen – Plattformen 9Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Verschiedene  Hersteller   Verschiedene  User  Interfaces   Unterschiedliche  Hardware   Viele  So5ware-­‐Versionen   Ein  Hersteller   Unterschiedliche  Hardware   Viele  So5ware-­‐Versionen  
  • 11. Herausforderungen – I18N 10Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 12. Herausforderungen – Datennetze 11Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 13. 12Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Werkzeuge
  • 14. Werkzeuge – Robotium 13Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Black  Box  Test  Tool   Basiert  auf  Java  und  JUnit  3   Support  für  Android  1.6  –  4.x   Simuliert  User  InteracIon   Einfacher  AuJau   Device  &  Simulator   Testet  gegen  APK  Datei  
  • 15. Werkzeuge – Robotium 14Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012  public  void  testLoginFailed()  throws  Exception  {      solo.enterText(0,  “wrongusername”);    solo.enterText(1,  “wrongpassword”);    solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));          solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",  2000);          assertTrue("ERROR:  Error  message  is  not  shown",            verifyTextIsPresent(solo.getString(                com.xing.android.R.string.dialog_error_body)));        solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));    }  
  • 16. Werkzeuge – Robotium 15Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012  public  void  testLoginFailed()  throws  Exception  {      solo.enterText(0,  “wrongusername”);    solo.enterText(1,  “wrongpassword”);    solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));          solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",  2000);          assertTrue("ERROR:  Error  message  is  not  shown",            verifyTextIsPresent(solo.getString(                com.xing.android.R.string.dialog_error_body)));        solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));    }  
  • 17. Werkzeuge – Robotium 16Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012  public  void  testLoginFailed()  throws  Exception  {      solo.enterText(0,  “wrongusername”);    solo.enterText(1,  “wrongpassword”);    solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));          solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",  2000);          assertTrue("ERROR:  Error  message  is  not  shown",            verifyTextIsPresent(solo.getString(                com.xing.android.R.string.dialog_error_body)));        solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));    }  
  • 18. Werkzeuge – Robotium 17Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012  public  void  testLoginFailed()  throws  Exception  {      solo.enterText(0,  “wrongusername”);    solo.enterText(1,  “wrongpassword”);    solo.clickOnButton(solo.getString(com.xing.android.R.string.button_login));          solo.waitForActivity("com.xing.android.activities.SpinnerLoginActivity",  2000);          assertTrue("ERROR:  Error  message  is  not  shown",            verifyTextIsPresent(solo.getString(                com.xing.android.R.string.dialog_error_body)));        solo.clickOnButton(solo.getString(com.xing.android.R.string.dialog_button));    }  
  • 19. Werkzeuge – Robotium 18Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 20. Werkzeuge – KIF (Keep It Functional) 19Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Grey  Box  Test  Tool   ObjecIve  C   Device  &  Simulator   Simuliert  User  InteracIon   Sehr  schnell  &  CI  IntegraIon  
  • 21. Werkzeuge – KIF (Keep It Functional) 20Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 22. 21Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Best Practices
  • 23. Best Practices 22Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 Kunden  kennen!   TestautomaIsierung  schreiben   Werkzeuge  Kombinieren   Crowd-­‐/  Cloud  TesIng  nutzen   Nutzer  und  den  Markt  beobachten   Testcode  und  Anwendung  in  gleicher  Sprache   Versionskontrolle  nutzen   ConInuous  IntegraIon  nutzen   Mobile  Simulatoren  meiden  
  • 24. Vielen Dank für Ihre Aufmerksamkeit! The professional network www.xing.com Daniel Knott Team Lead Quality Assurance daniel.knott@xing.com @dnlkntt http://www.adventuresinqa.com/ 23Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012
  • 25. Links & Referenzen 24Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 §  Robotium [http://code.google.com/p/robotium/] §  KIF [http://corner.squareup.com/2011/07/ios-integration-testing.html] §  WaxSim [https://github.com/square/waxsim] §  Hockeykit [http://hockeykit.net/] §  Twitter Logo [https://si0.twimg.com/a/1318896278/images/logos/twitter_newbird_white.png] §  Businesswoman [http://www.istockphoto.com/stock-photo-16742115-businesswoman- holding-a-blank-sign-isolated.php] §  Letters, by davide vizzini limbte [http://www.flickr.com/photos/limbte/4007115435/] §  Little Dish, by Juan de Dios Santander Vela [http://www.flickr.com/photos/juandesant/ 209098053] §  App Store Logo [http://upload.wikimedia.org/wikipedia/de/0/05/App-Store-Logo.png] §  Robot [http://www.nassaulibrary.org/eastrock/robot.jpg] §  Robotium Logo [http://f.hatena.ne.jp/images/fotolife/r/re_shikajiro/20110601/ 20110601224550.jpg] §  Square Logo [http://c580513.r13.cf2.rackcdn.com/wp-content/uploads/2011/07/Square_Logo _Landscape1-500x214.png?9d7bd4]
  • 26. Links & Referenzen 25Agile Testautomatisierung im XING Mobile Team | Daniel Knott @dnlkntt | Hamburg, 07.09.2012 §  Apple Logo [http://www.lte-tablets.de/files/2011/08/apple_logo.jpg] §  Android Logo [http://www.android.com/media/wallpaper/gif/android_logo.gif] §  Windows Phone Logo [http://upload.wikimedia.org/wikipedia/de/thumb/2/23/Windows_ Phone_Logo.svg/500px-Windows_Phone_Logo.svg.png] §  Blackberry Logo [http://us.blackberry.com/legal/bblogo_gray_003.jpg] §  WebOS Logo [http://upload.wikimedia.org/wikipedia/en/e/e0/WebOS_logo.svg] §  Symbian Logo [http://upload.wikimedia.org/wikipedia/de/thumb/c/c8/Symbian_OS_ logo.svg/686px-Symbian_OS_logo.svg.png] §  Google Play Logo [http://www.android.com/images/brand/android_app_on_play_logo_small.png] §  Apple App Store Logo [http://www.inext.me/wp-content/uploads/2011/09/ app-store_logo.png] §  Windows Market Place Logo [http://modmyi.com/attachments/forums/iphone-4- new-skins-themes-launches/483774d1290368882-release-windows-phone-7-hd-market-place-2x.png] §  Sogeti Logo [http://www.sogeti.com/upload/Quick%20access/Media/Logo_red_whiteBG_OK.gif]