Agile Testing and/or Agility in Testing? - PowerPoint PPT Presentation

About This Presentation
Title:

Agile Testing and/or Agility in Testing?

Description:

Deliver working software frequently, from a couple of weeks to a couple of months. ... In scripted testing, tests are first designed and recorded. ... – PowerPoint PPT presentation

Number of Views:309
Avg rating:3.0/5.0
Slides: 14
Provided by: sober
Category:

less

Transcript and Presenter's Notes

Title: Agile Testing and/or Agility in Testing?


1
Agile Testing and/orAgility in Testing?
Test Summit, 29.7.2003, Savonlinna
  • Juha Itkonen
  • SoberIT
  • Teknillinen Korkeakoulu

2
Contents
  • Overview of agility
  • Agile principles and testing
  • Two views of agile testing eXtreme and
    Exploratory
  • Third view and challenges of agile testing
  • Agile development and testing services

3
Agile Manifesto
  • Individuals and interactions over processes and
    tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

How do these values affect testing?
http//www.agilemanifesto.org/
4
Some agile principles
  • Satisfy the customer through early and continuous
    delivery of valuable software.
  • Working software is the primary measure of
    progress.
  • Deliver working software frequently, from a
    couple of weeks to a couple of months.
  • Welcome changing requirements, even late in
    development.
  • The most efficient and effective method of
    conveying information to and within a development
    team is face-to-face conversation.
  • Business people and developers must work together
    daily throughout the project.
  • Simplicity--the art of maximizing the amount of
    work not done--is essential.

http//www.agilemanifesto.org/
5
Agile methodologies and testing
  • eXtreme programming
  • Scrum
  • DSDM
  • FDD
  • LD
  • ASD
  • MS Synch-and-Stabilize
  • Crystal family
  • Some define strict disciplined testing practices
  • Some do not say much about testing approach
  • E.g. FDD processes used for testing are not
    the main process issues with which the
    organisations are struggling and most
    organizations already have reasonable testing
    processes in place

Agile Testing is a buzzword that is not yet
defined
6
Two views of agile testing
  • eXtreme Testing
  • Automated unit testing
  • Developers write tests
  • Test first development
  • Daily builds with unit tests always 100 pass
  • Functional testing
  • Customer-owned
  • Comprehensive
  • Repeatable
  • Automatic
  • Timely
  • Public
  • Exploratory Testing
  • Manual testing by professional skilled testers
  • Freedom, flexibility and fun for testers
  • Controllability, reliability and high quality for
    managers
  • Optimized to find bugs
  • Continually adjusting plans, re-focusing on the
    most promising risk areas
  • Following hunches
  • Minimizing time spent on documentation

Focus on automated verification enabling agile
software development
Focus on manual validation making testing
activities agile
7
Definitions of Exploratory Testing
  • To the extent that the next test we do is
    influenced by the result of the last test we did,
    we are doing exploratory testing. James Bach,
    2001
  • Exploratory testing involves simultaneously
    learning, planning, running tests,
    troubleshooting and reporting results. Cem Kaner,
    2001
  • In scripted testing, tests are first designed and
    recorded. Then they may be executed at some later
    time or by a different tester.
  • In exploratory testing, tests are designed and
    executed at the same time, and they often are not
    recorded.
  • You build a mental model of the product while you
    test it. This model includes what the product is
    and how it behaves, and how its supposed to
    behave.

James Bach, Rapid Software Testing, 2002
8
Scripted vs. Exploratory Tests
mines
fixes
9
Value of testing in agile development
  • Testing in agile software development should
    provide the information that stakeholders need to
    make decisions and steer the development into the
    right direction
  • This information must be provided promptly
  • Testing provides data on the status of the
    deliverables and generates project intelligence
  • Project intelligence is knowledge of risks and
    benefits
  • Knowledge of risks, benefits, test records and
    results are more valuable than test documentation
    and infrastructure
  • We can increase the value of testing most by
  • Improved intelligence
  • Providing intelligence earlier

10
Third view of agile testing
  • Embracing the change
  • Testing practices must not be fixed
  • Test procedures must be clearly defined and
    described as atomic modules
  • Test procedures must be easily selected to suit
    the changing situations and requirements
  • Development and testing must collaborate and
    agree on the test procedures and quality goals
    for each increment
  • Not only functionality but also non-functional
    features
  • Test requirements
  • Expected results
  • Business must set the upper-level quality
    requirements

11
Challenges for testing in agile software
development
  • What information is the testing based on?
  • What to test and what are the expected results?
  • How to make testing, development and business
    collaborate?
  • How to involve customer and business people in
    testing?
  • How do we know where we are?
  • Working software is the primary measure of
    progress
  • Testing should provide the data
  • If its not tested it doesnt exist
  • How to keep up with the pace of the development?
  • How to produce and communicate relevant
    information promptly?
  • How to test early but not do anticipatory test
    design?

12
Agile development and testing services
  • It is important to understand the challenges of
    agile practices
  • Hard to solve even within one company
  • If an agile company wishes to use testing
    services (e.g. for reliability, load, stress,
    compatibility or functional testing) it might be
    confronted with big problems
  • Arranging collaboration and communication
  • Service providers ability to respond to change
  • Service providers ability to adopt the pacing
  • ? The challenges of testing in agile development
    have to be solved!

13
Further reading
  • Beck, K., Test-Driven Development by Example,
    Addison-Wesley, 2003.
  • Crispin, L., T. House, Testing Extreme
    Programming, Addison-Wesley, 2003.
  • Kaner, C., J. Bach, B. Pettichord, Lessons
    Learned in Software Testing, John Wiley Sons,
    2002.
  • www.agilemanifesto.org/
  • www.xprogramming.com/
  • www.satisfice.com/articles/et-article.pdf
  • www.testingeducation.org/coursenotes/
  • www.testinglessons.com/
  • www.agilealliance.com/articles/
  • www.context-driven-testing.com/
Write a Comment
User Comments (0)
About PowerShow.com