BDT goes mobile
Upcoming SlideShare
Loading in...5
×
 

BDT goes mobile

on

  • 1,009 views

This talk was presented at VodQA Gurgaon 3rd edition (11 July 2013) ...

This talk was presented at VodQA Gurgaon 3rd edition (11 July 2013)

Talk Abstract:
Behavior driven testing is a renowned way of automation testing, which directly relates to user behavior of the applications. There are multiple open source tools available in market, which uses BDT for mobile automation testing like frank, calabash, appium, robotium etc. These tools can be used to test hybrid, native and web applications on various platforms like iOS, android. Lets review one of the commonly used tool Calabash for both iOS and Android with the help of live demo. The demo will include setup, writing tests, execution, reporting and the limitations of Calabash.

Speakers:
Raman Kansal: Raman is a Quality analyst in Thoughtworks Gurgaon. He has over 10 years of experience in manual and automation testing. His experience includes working in banking, finance, and insurance, publishing, and accounting domains.

Kriti Mehta: Kriti is an enthusiastic quality analyst in Thoughtworks Gurgaon & working on mobile application testing for last 1 year. She is involved in analyzing different mobile automation tools.

Statistics

Views

Total Views
1,009
Views on SlideShare
1,009
Embed Views
0

Actions

Likes
0
Downloads
36
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

BDT goes mobile BDT goes mobile Presentation Transcript

  • Raman Kansal & Kriti Mehta BDT goes Mobile!!!
  • Evolution of test frameworks Core Frameworks Record & Playback Optimized scripts Behavior Driven Testing(BDT)
  • Lets start with an example USER ATM MONEY
  • Test cases: Valid card, Invalid card, Valid amount, Invalid amount etc Methods: validate_card() verify_cash() debit_cash() *Validating card *Verifying the account *Debit cash *Ensure correct balance in account 4 User QA BA Developer BUT I wanted to withdraw cash from atm !!!
  • Let's do it BDT way! 5 UserQABA Dev Functionality Test Cases Behavior Implementation
  • Why is BDT an advantage? Usable domain language for team as well as domain experts/clients Never have to rewrite specs, since the behavior does not change. Fixing context implementations , less painful than to rewrite tests Supports multiple languages Example: Cucumber supports 30 different languages.
  • So the future is mobile!!
  • BDT mobile testing tools Calabash-iOS Calabash -Android Frank (iOS) Robotium (Android) FoneMonkey (iOS) Appium SikuliEggPlant
  • Calabash- iOS Automated testing technology For iOS native and hybrid applications Cucumber based
  • How it works?
  • DEMO Pre-Requisite – MacOS with xcode and Ruby DEMO Setup Features Execution Steps Query
  • Useful calabash commands cd path-to-my-ios-project (i.e. directory containing .xcodeproj file) gem install calabash-cucumber calabash-ios gen calabash-ios setup Cucumber /NO_LAUNCH=1 DEVICE=iphone OS=ios5 DEVICE_ENDPOINT=http://192.168.1.37:37265 cucumber calabash-ios console
  • Custom steps (.feature and .rb file)
  • Pros ➢ Uniform interface across platforms ➢ Supports complex gestures ➢ Authenticity ➢ Cucumber ➢ Extensibility and community
  • Useful links ➢ Calabash ios setup: https://github.com/calabash/calabash-ios ➢ Calabash android setup:https://github.com/calabash/calabash-android ➢ IOS - Application used in Demo: https://github.com/Frahaan/2012-Olympics-iOS--iPad-and-iPhone--source-code ➢ Calabash cucumber doc: https://github.com/calabash/calabash-ios/blob/0.9.x/calabash-cucumber/doc/x-platform-te sting.md ➢ Calabash tests execution: https://github.com/calabash/calabash-ios/wiki/07-Testing-on-physical-iDevices ➢ Calabash landing page: http://calaba.sh/ ➢ Less-Painful -Automated App testing: https://www.lesspainful.com/ ➢ Pre-defined steps:https://github.com/calabash/calabash-ios/wiki/02-Predefined-steps ➢ Calabash iOS ruby API: https://github.com/calabash/calabash-ios/wiki/03.5-Calabash-iOS-Ruby-API
  • Questions ??