SlideShare a Scribd company logo
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 ??

More Related Content

Similar to BDT goes Mobile

Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1
willmation
 
DDT Testing Library for Android
DDT Testing Library for AndroidDDT Testing Library for Android
DDT Testing Library for Android
Ahmed Misbah
 
Gateway to Agile: XP and BDD
Gateway to Agile: XP and BDD Gateway to Agile: XP and BDD
Gateway to Agile: XP and BDD
Gervais Johnson, Advisor
 
Test Essentials @mdevcon 2012
Test Essentials @mdevcon 2012Test Essentials @mdevcon 2012
Test Essentials @mdevcon 2012
Maxim Zaks
 
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FISDeepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak kumar
 
Testdroid:
Testdroid: Testdroid:
Testdroid:
Lingkai Shao
 
CucumberSeleniumWD
CucumberSeleniumWDCucumberSeleniumWD
CucumberSeleniumWD
Vikas Sarin
 
LDN BotFramework Meetup #3: Robots Testing Robots
LDN BotFramework Meetup #3: Robots Testing RobotsLDN BotFramework Meetup #3: Robots Testing Robots
LDN BotFramework Meetup #3: Robots Testing Robots
Robin Osborne
 
Continuous testing at scale
Continuous testing at scaleContinuous testing at scale
Continuous testing at scale
Gergely Orosz
 
Acceptance Test Driven Development and Robot Framework
Acceptance Test Driven Development and Robot FrameworkAcceptance Test Driven Development and Robot Framework
Acceptance Test Driven Development and Robot Framework
Steve Zhang
 
BDD
BDDBDD
Abhay Bajpai_Resume
Abhay Bajpai_ResumeAbhay Bajpai_Resume
Abhay Bajpai_Resume
Abhay Bajpai
 
"Production Driven Development", Serhii Kalinets
"Production Driven Development", Serhii Kalinets"Production Driven Development", Serhii Kalinets
"Production Driven Development", Serhii Kalinets
Fwdays
 
Resume_Sameer Parihar
Resume_Sameer PariharResume_Sameer Parihar
Resume_Sameer Parihar
Sameer Parihar
 
API Craft : Building Autodesk Forge APIs
API Craft : Building Autodesk Forge APIsAPI Craft : Building Autodesk Forge APIs
API Craft : Building Autodesk Forge APIs
monmohan
 
Lean Quality & Engineering
Lean Quality & EngineeringLean Quality & Engineering
Lean Quality & Engineering
Mek Srunyu Stittri
 
Synchronized Development for Distributed Teams
Synchronized Development for Distributed TeamsSynchronized Development for Distributed Teams
Synchronized Development for Distributed Teams
Togakangaroo
 
Versioned Page Objects: How to handle 12 versions of web application
Versioned Page Objects: How to handle 12 versions of web applicationVersioned Page Objects: How to handle 12 versions of web application
Versioned Page Objects: How to handle 12 versions of web application
Alexandr Khotemskoy
 
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UXBehaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
John Patterson
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
QA or the Highway
 

Similar to BDT goes Mobile (20)

Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1Behaviour Driven Development V 0.1
Behaviour Driven Development V 0.1
 
DDT Testing Library for Android
DDT Testing Library for AndroidDDT Testing Library for Android
DDT Testing Library for Android
 
Gateway to Agile: XP and BDD
Gateway to Agile: XP and BDD Gateway to Agile: XP and BDD
Gateway to Agile: XP and BDD
 
Test Essentials @mdevcon 2012
Test Essentials @mdevcon 2012Test Essentials @mdevcon 2012
Test Essentials @mdevcon 2012
 
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FISDeepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
Deepak_QA-Manual$Automation_5 Years_MCA_CV_FIS
 
Testdroid:
Testdroid: Testdroid:
Testdroid:
 
CucumberSeleniumWD
CucumberSeleniumWDCucumberSeleniumWD
CucumberSeleniumWD
 
LDN BotFramework Meetup #3: Robots Testing Robots
LDN BotFramework Meetup #3: Robots Testing RobotsLDN BotFramework Meetup #3: Robots Testing Robots
LDN BotFramework Meetup #3: Robots Testing Robots
 
Continuous testing at scale
Continuous testing at scaleContinuous testing at scale
Continuous testing at scale
 
Acceptance Test Driven Development and Robot Framework
Acceptance Test Driven Development and Robot FrameworkAcceptance Test Driven Development and Robot Framework
Acceptance Test Driven Development and Robot Framework
 
BDD
BDDBDD
BDD
 
Abhay Bajpai_Resume
Abhay Bajpai_ResumeAbhay Bajpai_Resume
Abhay Bajpai_Resume
 
"Production Driven Development", Serhii Kalinets
"Production Driven Development", Serhii Kalinets"Production Driven Development", Serhii Kalinets
"Production Driven Development", Serhii Kalinets
 
Resume_Sameer Parihar
Resume_Sameer PariharResume_Sameer Parihar
Resume_Sameer Parihar
 
API Craft : Building Autodesk Forge APIs
API Craft : Building Autodesk Forge APIsAPI Craft : Building Autodesk Forge APIs
API Craft : Building Autodesk Forge APIs
 
Lean Quality & Engineering
Lean Quality & EngineeringLean Quality & Engineering
Lean Quality & Engineering
 
Synchronized Development for Distributed Teams
Synchronized Development for Distributed TeamsSynchronized Development for Distributed Teams
Synchronized Development for Distributed Teams
 
Versioned Page Objects: How to handle 12 versions of web application
Versioned Page Objects: How to handle 12 versions of web applicationVersioned Page Objects: How to handle 12 versions of web application
Versioned Page Objects: How to handle 12 versions of web application
 
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UXBehaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
Behaviour Driven Development (BDD) - Closing the Loop on a Great Fiori UX
 
Creating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran KinsbrunerCreating a successful continuous testing environment by Eran Kinsbruner
Creating a successful continuous testing environment by Eran Kinsbruner
 

More from Thoughtworks

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
Thoughtworks
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
Thoughtworks
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
Thoughtworks
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
Thoughtworks
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
Thoughtworks
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
Thoughtworks
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
Thoughtworks
 
When we design together
When we design togetherWhen we design together
When we design together
Thoughtworks
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
Thoughtworks
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
Thoughtworks
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
Thoughtworks
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
Thoughtworks
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
Thoughtworks
 
Error handling
Error handlingError handling
Error handling
Thoughtworks
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
Thoughtworks
 
Docker container security
Docker container securityDocker container security
Docker container security
Thoughtworks
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
Thoughtworks
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
Thoughtworks
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
Thoughtworks
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
Thoughtworks
 

More from Thoughtworks (20)

Design System as a Product
Design System as a ProductDesign System as a Product
Design System as a Product
 
Designers, Developers & Dogs
Designers, Developers & DogsDesigners, Developers & Dogs
Designers, Developers & Dogs
 
Cloud-first for fast innovation
Cloud-first for fast innovationCloud-first for fast innovation
Cloud-first for fast innovation
 
More impact with flexible teams
More impact with flexible teamsMore impact with flexible teams
More impact with flexible teams
 
Culture of Innovation
Culture of InnovationCulture of Innovation
Culture of Innovation
 
Dual-Track Agile
Dual-Track AgileDual-Track Agile
Dual-Track Agile
 
Developer Experience
Developer ExperienceDeveloper Experience
Developer Experience
 
When we design together
When we design togetherWhen we design together
When we design together
 
Hardware is hard(er)
Hardware is hard(er)Hardware is hard(er)
Hardware is hard(er)
 
Customer-centric innovation enabled by cloud
 Customer-centric innovation enabled by cloud Customer-centric innovation enabled by cloud
Customer-centric innovation enabled by cloud
 
Amazon's Culture of Innovation
Amazon's Culture of InnovationAmazon's Culture of Innovation
Amazon's Culture of Innovation
 
When in doubt, go live
When in doubt, go liveWhen in doubt, go live
When in doubt, go live
 
Don't cross the Rubicon
Don't cross the RubiconDon't cross the Rubicon
Don't cross the Rubicon
 
Error handling
Error handlingError handling
Error handling
 
Your test coverage is a lie!
Your test coverage is a lie!Your test coverage is a lie!
Your test coverage is a lie!
 
Docker container security
Docker container securityDocker container security
Docker container security
 
Redefining the unit
Redefining the unitRedefining the unit
Redefining the unit
 
Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22Technology Radar Webinar UK - Vol. 22
Technology Radar Webinar UK - Vol. 22
 
A Tribute to Turing
A Tribute to TuringA Tribute to Turing
A Tribute to Turing
 
Rsa maths worked out
Rsa maths worked outRsa maths worked out
Rsa maths worked out
 

Recently uploaded

Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
Neo4j
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
christinelarrosa
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
c5vrf27qcz
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
Tatiana Kojar
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
Fwdays
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
Edge AI and Vision Alliance
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
Miro Wengner
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
ScyllaDB
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
LizaNolte
 

Recently uploaded (20)

Leveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and StandardsLeveraging the Graph for Clinical Trials and Standards
Leveraging the Graph for Clinical Trials and Standards
 
Christine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptxChristine's Product Research Presentation.pptx
Christine's Product Research Presentation.pptx
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
Y-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PPY-Combinator seed pitch deck template PP
Y-Combinator seed pitch deck template PP
 
Skybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoptionSkybuffer SAM4U tool for SAP license adoption
Skybuffer SAM4U tool for SAP license adoption
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk"Frontline Battles with DDoS: Best practices and Lessons Learned",  Igor Ivaniuk
"Frontline Battles with DDoS: Best practices and Lessons Learned", Igor Ivaniuk
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
“Temporal Event Neural Networks: A More Efficient Alternative to the Transfor...
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
JavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green MasterplanJavaLand 2024: Application Development Green Masterplan
JavaLand 2024: Application Development Green Masterplan
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham HillinQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
inQuba Webinar Mastering Customer Journey Management with Dr Graham Hill
 

BDT goes Mobile

  • 1. Raman Kansal & Kriti Mehta BDT goes Mobile!!!
  • 2. Evolution of test frameworks Core Frameworks Record & Playback Optimized scripts Behavior Driven Testing(BDT)
  • 3. Lets start with an example USER ATM MONEY
  • 4. 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 !!!
  • 5. Let's do it BDT way! 5 UserQABA Dev Functionality Test Cases Behavior Implementation
  • 6. 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.
  • 7. So the future is mobile!!
  • 8. BDT mobile testing tools Calabash-iOS Calabash -Android Frank (iOS) Robotium (Android) FoneMonkey (iOS) Appium SikuliEggPlant
  • 9. Calabash- iOS Automated testing technology For iOS native and hybrid applications Cucumber based
  • 11. DEMO Pre-Requisite – MacOS with xcode and Ruby DEMO Setup Features Execution Steps Query
  • 12. 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
  • 14. Pros ➢ Uniform interface across platforms ➢ Supports complex gestures ➢ Authenticity ➢ Cucumber ➢ Extensibility and community
  • 15. 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