Upload
aspire-systems
View
832
Download
1
Tags:
Embed Size (px)
Citation preview
BEHAVIOR DRIVEN TESTING
Evolution of Agile Methodologies
DSDM Scrum Xtreme
Programming Feature Driven
Behavior Driven
BDT : A paradigm shift
Fun
ctio
nal
ity
dri
ven
Focus on technical implementation
Long regression cycle
Mini-Waterfall
Huge defect fixing costs
Lack of visibility of what is being tested
Maintenance Nightmare
Beh
avio
r d
rive
n
Focus on behavior of the software
Same visibility to all in the Team
Removes ambiguity
Works towards the big picture – Business value
Automate right set of tests
More effective testing efforts
BDT Approach
BDT
Work towards the big picture
Extension of TDD
Describes the tests as
expected behavior
Behavioral specification through user
stories
Shifting thinking in “tests” to thinking in “behavior”
Improved collaboration
between stakeholders
Agile
•Focus on requirements •Identifies the different flows / application behaviors • Easy to understand the scenarios • Much useful for automating multi channel applications • Open Source savvy • Greater ROI • No longer costly to maintain
BDT Process Outline
Business Analyst writes a formal User Story
Tester writes the behaviour driven
Cucumber Scenarios based on the user story
Scenarios get reviewed by the business team
Automation engineer writes the step
definitions for the scenario steps
Scenarios get automated by the QA
team
Run the automated scenarios and fix if any
bugs exists
Automated tests run as regression tests
User accepts the software (Acceptance &
Quality Criteria met)
Benefits of BDT
Helpful for communicating the requirements effectively
Mutually understandable structure (test scenarios) between BA, QA and Dev
Verified by BAs and testers to make sure of the acceptance criteria
Test scenarios reflecting user stories & the business requirements of the application
More certainty on what is needed
Automated regression suite defined by BAs
Effective re-purposing of past scenarios
BDT – Tool Snapshot
All the above tools will enable us to execute the Plain-text functional specifications as automated tests.
For UI interactions we can use Selenium web driver / Watir web driver.
Ruby Java .NET
.NET Groovy
CASE STUDIES
Test Automation using BD methodology for a F500 Retail firm
A $27 Billion Retail chain in USA.
It has about 850 stores around the country.
More than 3 years old ongoing engagement with Aspire
Functional Testing, Test Automation and Maintenance
Onsite Offshore Model
Challenges and Solutions
Challenges
• No Automation - Long running regression cycles
• Lack of visibility on what to test
• Outdated test cases
• Unable map with requirements (user stories)
• Maintenance nightmare
Solution • Suggested and implemented BDT
• Scenarios developed for each requirements with the right process and collaboration methods
• Implemented Test Automation as a strategy and reduced no of bugs and defect leakage
• Scenarios updated according to the enhancement / changes in requirement
Tools and Technologies • Scripting: Ruby
• BDT: Cucumber
• UI Automation: Selenium Web Driver (POM)
• CI Tool: Jenkins
• Code Repo: GIT
AUT
Step Definitions
Feature Files
Data Source (YML/DB)
Jenkins Cucumber Reports GIT
YML Build Stage
Aspire’s BDT Framework
Before Aspire After Aspire
Aspire Difference
Been in IT Service business for over 15 years
Niche Software services provider
60+ active engagements; 1000+ Aspirians
Core Competencies: SaaS, Mobile, Test Automation, Infrastructure
Management, SOA/BPM, Enterprise Architecture
Focus Verticals: Education, Healthcare, Media, Retail and Distribution
Gartner listed Product Engineering Provider
ISO 9001:2008 certified
Awards
Ranked in the top 500 fast growing technology companies in Asia Pacific for 3 years in a row
Ranked among the Top 20 Global R&D Service Providers by Zinnov Consulting
About Aspire
Testing @ Aspire
3 Average Defect Leakage Ratio that we promise our customers.
4 Fortune 500 customers that we have served and continue to serve in QA
30 Premium Commercial and Open Source Testing Tools that we work on.
100000+ Bugs identified till date
35000+ High severity bugs reported
Applications that we have tested till date.
Exceptionally talented and certified QA resources
100+ Highly skilled Test Automation programmers on Java, C#, Ruby, Python, Perl , Vbscript and others
Thank You