behavior driven testing - a paradigm shift

15
BEHAVIOR DRIVEN TESTING

Upload: aspire-systems

Post on 20-Aug-2015

830 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Behavior Driven Testing - A paradigm shift

BEHAVIOR DRIVEN TESTING

Page 2: Behavior Driven Testing - A paradigm shift

Evolution of Agile Methodologies

DSDM Scrum Xtreme

Programming Feature Driven

Behavior Driven

Page 3: Behavior Driven Testing - A paradigm shift

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

Page 4: Behavior Driven Testing - A paradigm shift

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

Page 5: Behavior Driven Testing - A paradigm shift

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)

Page 6: Behavior Driven Testing - A paradigm shift

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

Page 7: Behavior Driven Testing - A paradigm shift

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

Page 8: Behavior Driven Testing - A paradigm shift

CASE STUDIES

Page 9: Behavior Driven Testing - A paradigm shift

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

Page 10: Behavior Driven Testing - A paradigm shift

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

Page 11: Behavior Driven Testing - A paradigm shift

AUT

Step Definitions

Feature Files

Data Source (YML/DB)

Jenkins Cucumber Reports GIT

YML Build Stage

Aspire’s BDT Framework

Page 12: Behavior Driven Testing - A paradigm shift

Before Aspire After Aspire

Aspire Difference

Page 13: Behavior Driven Testing - A paradigm shift

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

Page 14: Behavior Driven Testing - A paradigm shift

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

Page 15: Behavior Driven Testing - A paradigm shift

Thank You