agile testing – is it for me and how are others doing it?

24
Agile Testing – Is it for me and how are others doing it? 2013-11-07 Alexander Tarnowski

Upload: alexander-tarnowski

Post on 09-May-2015

435 views

Category:

Technology


2 download

DESCRIPTION

This is a 45 minute introduction to agile testing. The slides are "speaking slides", which means that they should be accompanied by an oral presentation and may not be all that easy to comprehend without context.

TRANSCRIPT

Page 1: Agile Testing – Is it for me and how are others doing it?

Agile Testing – Is it for me and how are others doing it?

2013-11-07Alexander Tarnowski

Page 2: Agile Testing – Is it for me and how are others doing it?

[email protected]

alexander_tar

blog.crisp.se/author/alexandertarnowskiBlog

www

www.techbookreader.com

Page 3: Agile Testing – Is it for me and how are others doing it?

Agenda

Agile testing – Introduction

Case studies

State of the industry

Questions

What

How

Optional

Page 4: Agile Testing – Is it for me and how are others doing it?

Agile Manifesto – Some principles

• Our highest priority is to satisfy the customerthrough early and continuous deliveryof valuable software.

• The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.

• Working software is the primary measure of progress.

• Simplicity--the art of maximizing the amount of work not done--is essential.

Working in an agile context

Page 5: Agile Testing – Is it for me and how are others doing it?

5

Agile methodologies

Scrum• Transparency• Inspection• Adaption

XP• Communication• Feedback• Simplicity• Respect• Courage

Lean Software Development• Eliminate waste• Build quality in• Create knowledge• Defer commitment • Deliver fast• Respect people• Optimize the

whole

Working in an agile context

Page 6: Agile Testing – Is it for me and how are others doing it?

Agile practices summarized

• Working software delivered frequently• To provide business value as early as possible• By cross-functional teams• That learn and improve

Working in an agile context

Page 7: Agile Testing – Is it for me and how are others doing it?

Practices

Overview of agile testing

The whole team owns the quality

Testing is a supporting activity

Deliver software instead of written

artifactsAutomation

Definition• Agile testing = testing

performed in an agile team

Expected outcome• The team delivers

high-quality software

Page 8: Agile Testing – Is it for me and how are others doing it?

Testing is a supporting activity

Image courtesy of cooldesign / FreeDigitalPhotos.net

Test to: 1. Gather information and find defects2. Help the team move fast and stay safe

Page 9: Agile Testing – Is it for me and how are others doing it?

9Image courtesy of Feelart/ FreeDigitalPhotos.net & http://www.aha-soft.com/

Software construction is like building: Step 1: Build according to blueprint Step 2: Inspect for defects

”Done” code

Bug report

Testing is a supporting activity

HandoversCommunication barriersUs-them

Programmer

Tester

Page 10: Agile Testing – Is it for me and how are others doing it?

The developer and tester mindsets

I program (create),but I suffer from creator’s bias.

I test (break) and am a critical thinker, who sees the whole.

Testing is a supporting activity

David the Developer

Terry the Tester

Page 11: Agile Testing – Is it for me and how are others doing it?

The fundamental test process• Determine scope and risks and identify the

objectives of testing.• Determine the test approach.• Implement the test policy and/or the test

strategy.• Determine required test resources.• Schedule test analysis and design tasks,

test implementation, execution and evaluation.

• Determine the exit criteria.• Measure and analyze the results of reviews

and testing.• Monitor and document progress, test coverage

and exit criteria.• Provide information on testing.• Initiate corrective actions.• Make decisions.• Identify test conditions.• Design the tests.• Evaluate testability of the requirements and

system.• Design the test environment set-up and

identify and required infrastructure and tools.

• Develop and prioritize our test cases by using techniques and create test data for those tests.

• Create test suites from the test cases for efficient test execution.

• Implement and verify the environment.

• Execute test suites and individual test cases following the test procedures.

• Re-execute the tests that previously failed.

• Log the outcome of the test execution and record the identities and versions of the software under tests.

• Compare actual results with expected results.

• Check the test logs against the exit criteria specified in test planning.

• Assess if more test are needed or if the exit criteria specified should be changed.

• Write a test summary report for stakeholders.

• Check which planned deliverables are actually delivered and to ensure that all incident reports have been resolved.

• Finalize and archive testware for later reuse.

• Handover the testware to maintenance. • Evaluate how the testing went and learn

lessons for future releases and projects.

Testing is a supporting activity

Page 12: Agile Testing – Is it for me and how are others doing it?

Agile testing quadrants

Testing is a supporting activity

Page 13: Agile Testing – Is it for me and how are others doing it?

The whole team owns the quality

• Every team member is responsible for the quality• Team members that are professional testers may

have more experience in doing this• Testing activities are estimated just like other

tasks

The whole team owns the quality

Done Done Done More DoneIn progressTo do

Page 14: Agile Testing – Is it for me and how are others doing it?

Do agile teams require testers?

• Develop code test-first or well unit-tested• Write integration tests• Practice CI• Create and maintain the automation layer• Testing sessions (with some training and facilitation)

The whole team owns the quality

• Provide a holistic view of the application• Exploratory testing • Specialized testing• Create the ”nasty” test cases

Dev

elop

er w

ork

Test

er w

ork

Good enough?

Page 15: Agile Testing – Is it for me and how are others doing it?

Does a tester on an agile team have to be a techie?

The whole team owns the quality

Page 16: Agile Testing – Is it for me and how are others doing it?

Deliver software instead of written artifacts

Page 17: Agile Testing – Is it for me and how are others doing it?

The Bug Reporting System

• Holds detailed information • Knowledge base• Supports distributed teams

Deliver software instead of written artifacts

Page 18: Agile Testing – Is it for me and how are others doing it?

Metrics

Deliver software instead of written artifacts

Lines of code

Defects during development

Defects in production

Coverages

Cycle time

Page 19: Agile Testing – Is it for me and how are others doing it?

19

The test strategy

Deliver software instead of written artifactsImage Flickr commons/The Swedish National Heritage Board

Page 20: Agile Testing – Is it for me and how are others doing it?

Automation

• Keeps the amount of work ”constant”• Agile teams must automate to maintain their

velocity

Automation

2-4 week iterations

Tedious work

Developer work

Refactoring

Page 21: Agile Testing – Is it for me and how are others doing it?

Regression testing

Automation

A B A B

C

A B

C

D E

Iteration 3Iteration 2Iteration 1

Time

Features

Page 22: Agile Testing – Is it for me and how are others doing it?

Parachuting a tester into a development team

The agile tester

Page 23: Agile Testing – Is it for me and how are others doing it?

An agile tester – True or False

Gathers and shares informationHelps the customer to express requirementsActs a quality police officer that protects the customer from bad codeProvides feedbackCommunicates through a defect tracking systemConstantly improves and learns

True False

The agile tester

Page 24: Agile Testing – Is it for me and how are others doing it?

[email protected]

alexander_tar

blog.crisp.se/author/alexandertarnowskiBlog

www

www.techbookreader.com

Questions