Behavior Driven Testing for Multichannel Enterprise Applications

Preview:

DESCRIPTION

 

Citation preview

Behaviour Driven Testing

for

Multichannel Enterprise Application

Contents

What is behaviour driven testing

What do we mean by multi channel applications

Testing Approach

Demo

Things to consider

Take Away

What this talk is NOT about ?

Behaviour Driven Development (BDD)

What this talk is about ?

Behaviour Driven Testing (BDT)

What is Behaviour Driven Testing ?

Approach to look at Bigger Picture

Helps drives Testing development

Uses Behaviour Driven Tools

Majorly useful for testing Multichannel

Applications

Multichannel Enterprise Application

Buy a train ticket using iPhone

As a iPhone user

I want to buy a train ticket

So that I can travel to a place of my

interest

Buy a train ticket using Android

As a android user

I want to buy a train ticket

So that I can travel to a place of my

interest

Buy a train ticket using Website

As a web user

I want to buy a train ticket

So that I can travel to a place of my

interest

User behaviour – buy a train ticket

As a user

I want to buy a train ticket

So that I can travel to a place of my

interest

User Behaviour

remains the same irrespective

of the channel used

Architecture

SOA / Web servicesWeb Services

UI Common Backend

UI Common Backend

Testing

Entry

Points

Testing Entry Points

Common Backend

UIUser Flow

User Flows

ios

droid

web

Web Services

Common Backend

UIUser Behavior

Common Backend

UIUser Behaviour

User Flow

User Behaviour

ios

droid

web

Web Services

If we test User Behaviour

on each channel in-turn we test

the User Flows specific to that

channel

Demo

Tools / Test Infrastructure

Common Backend

UIChannel-Specific Mapping

User Behaviour

Frank

Calabash

Web-driver

ios

droid

web

Cucumber Specs

Shared logic

Test Tools

Things To Consider

Where to start in the process

– user journey on 1 channel is complete

Where these tests fit in / are useful

– for multichannel applications

- when a new channel is introduced

– in the regression cycle

Things To Consider …

Consumer of the tests

– Business

- QA team

Number of tests

– limited to the number of different user journeys

available

Other Tools

Shim.js

Spoon.net

http://browsershots.org/

Take Away

Write Once Run Any where

User Behaviour remains the same irrespective of the

channel used

If we test User Behaviour on each channel in-turn we

test the User Flows specific to that channel

Thank you !

Contact us:sudeep@thoughtworks.com