Agile Testing

Agile Testing

$59.99

SKU: 9780321534460
Quantity Discount
5 + $44.99

Description

Get past the myths of testing in agile environments – and implement agile testing the RIGHT way

  • For everyone concerned with agile testing: developers, testers, managers, customers, and other stakeholders
  • Covers every key issue: Values, practices, organizational and cultural challenges, collaboration, metrics, infrastructure, documentation, tools, and more
  • By two of the world’s most experienced agile testing practitioners and consultants
  • Two of the industry’s most experienced agile testing practitioners and consultants, Lisa Crispin and Janet Gregory, have teamed up to bring you the definitive answers to these questions and many others. In Agile Testing, Crispin and Gregory define agile testing and illustrate the tester’s role with examples from real agile teams. They teach you how to use the agile testing quadrants to identify what testing is needed, who should do it, and what tools might help. The book chronicles an agile software development iteration from the viewpoint of a tester and explains the seven key success factors of agile testing.

    • Readers will come away from this book understanding
    • How to get testers engaged in agile development
    • Where testers and QA managers fit on an agile team
    • What to look for when hiring an agile tester
    • How to transition from a traditional cycle to agile development
    • How to complete testing activities in short iterations
    • How to use tests to successfully guide development
    • How to overcome barriers to test automation
    • This book is a must for agile testers, agile teams, their managers, and their customers

    “As Agile methods have entered the mainstream, we’ve learned a lot about how the testing discipline fits into Agile projects. Lisa and Janet give us a solid look at what to do, and what to avoid, in Agile testing.”
    –Ron Jeffries, www.XProgramming.com

    “An excellent introduction to agile and how it affects the software test community!”
    –Gerard Meszaros, Agile Practice Lead and Chief Test Strategist at Solution Frameworks, Inc., an agile coaching and lean software development consultancy

    “In sports and music, people know the importance of practicing technique until it becomes a part of the way they do things. This book is about some of the most fundamental techniques in software development–how to build quality into code–techniques that should become second nature to every development team. The book provides both broad and in-depth coverage of how to move testing to the front of the development process, along with a liberal sprinkling of real-life examples that bring the book to life.”
    –Mary Poppendieck, Author of Lean Software Development and Implementing Lean Software Development

    “Refreshingly pragmatic. Chock-full of wisdom. Absent of dogma. This book is a gamechanger. Every software professional should read it.”
    –Uncle Bob Martin, Object Mentor, Inc.

    “With Agile Testing, Lisa and Janet have used their holistic sensibility of testing to describe a culture shift for testers and teams willing to elevate their test effectiveness. The combination of real-life project experiences and specific techniques provide an excellent way to learn and adapt to continually changing project needs.”
    –Adam Geras, M.Sc. Developer-Tester, Ideaca Knowledge Services

    “On Agile projects, everyone seems to ask, ‘But, what about testing?’ Is it the development team’s responsibility entirely, the testing team, or a collaborative effort between developers and testers? Or, ‘How much testing should we automate?’ Lisa and Janet have written a book that finally answers these types of questions and more! Whether you’re a tester, developer, or manager, you’ll learn many great examples and stories from the real-world work experiences they’ve shared in this excellent book.”
    –Paul Duvall, CTO of Stelligent and co-author of Continuous Integration: Improving Software Quality and Reducing Risk

    “Finally a book for testers on Agile teams that acknowledges there is not just one right way! Agile Testing provides comprehensive coverage of the issues testers face when they move to Agile: from tools and metrics to roles and process. Illustrated with numerous stories and examples from many contributors, it gives a clear picture of what successful Agile testers are doing today.”
    –Bret Pettichord, Chief Technical Officer of WatirCraft and Lead Developer of Watir

    Te>Two of the industry’s most experienced agile testing practitioners and consultants, Lisa Crispin and Janet Gregory, have teamed up to bring you the definitive answers to these questions and many others. In Agile Testing, Crispin and Gregory define agile testing and illustrate the tester’s role with examples from real agile teams. They teach you how to use the agile testing quadrants to identify what testing is needed, who should do it, and what tools might help. The book chronicles an agile software development iteration from the viewpoint of a tester and explains the seven key success factors
    of agile testing.

    Readers will come away from this book understanding

    • How to get testers engaged in agile development
    • Where testers and QA managers fit on an agile team
    • What to look for when hiring an agile tester
    • How to transition from a traditional cycle to agile development
    • How to complete testing activities in short iterations
    • How to use tests to successfully guide development
    • How to overcome barriers to test automation

    This book is a must for agile testers, agile teams, their managers, and their customers.

     

    The eBook edition of Agile Testing also is available as part of a two-eBook collection, The Agile Testing Collection (9780134190624).

    Foreword by Mike Cohn      xxiii
    Foreword by Brian Marick      xxv
    Preface      xxvii
    Acknowledgments      xxxvii
    About the Authors      xli


    Part I: Introduction      1
    Chapter 1: What Is Agile Testing, Anyway?      3

    Agile Values 3
    What Do We Mean by “Agile Testing”? 4
    A Little Context for Roles and Activities on an Agile Team 7
    How Is Agile Testing Different? 9
    Whole-Team Approach 15
    Summary 17

    Chapter 2: Ten Principles for Agile Testers      19
    What’s an Agile Tester? 19
    The Agile Testing Mind-Set 20
    Applying Agile Principles and Values 21
    Adding Value 31
    Summary 33

    Part II: Organizational Challenges      35
    Chapter 3: Cultural Challenges      37

    Organizational Culture 37
    Barriers to Successful Agile Adoption by Test/QA Teams 44
    Introducing Change 49
    Management Expectations 52
    Change Doesn’t Come Easy 56
    Summary 58

    Chapter 4: Team Logistics      59
    Team Structure 59
    Physical Logistics 65
    Resources 66
    Building a Team 69
    Summary 71

    Chapter 5: Transitioning Typical Processes      73
    Seeking Lightweight Processes 73
    Metrics 74
    Defect Tracking 79
    Test Planning 86
    Existing Processes and Models 88
    Summary 93

    Part III: The Agile Testing Quadrants      95
    Chapter 6: The Purpose of Testing      97

    The Agile Testing Quadrants 97
    Knowing When a Story Is Done 104
    Managing Technical Debt 106
    Testing in Context 106
    Summary 108

    Chapter 7: Technology-Facing Tests that Support the Team       109
    An Agile Testing Foundation 109
    Why Write and Execute These Tests? 112
    Where Do Technology-Facing Tests Stop? 119
    What If the Team Doesn’t Do These Tests? 121
    Toolkit 123
    Summary 127

    Chapter 8: Business-Facing Tests that Support the Team      129
    Driving Development with Business-Facing Tests 129
    The Requirements Quandary 132
    Thin Slices, Small Chunks 144
    How Do We Know We’re Done? 146
    Tests Mitigate Risk 147
    Testability and Automation 149
    Summary 150

    Chapter 9: Toolkit for Business-Facing Tests that Support the Team       153
    Business-Facing Test Tool Strategy 153
    Tools to Elicit Examples and Requirements 155
    Tools for Automating Tests Based on Examples 164
    Strategies for Writing Tests 177
    Testability 183
    Test Management 186
    Summary 186

    Chapter 10: Business-Facing Tests that Critique the Product      189
    Introduction to Quadrant 3 190
    Demonstrations 191
    Scenario Testing 192
    Exploratory Testing 195
    Usability Testing 202
    Behind the GUI 204
    Testing Documents and Documentation 207
    Tools to Assist with Exploratory Testing 210
    Summary 214

    Chapter 11: Critiquing the Product Using Technology-Facing Tests       217
    Introduction to Quadrant 4 217
    Who Does It? 220
    When Do You Do It? 222
    “ility” Testing 223
    Performance, Load, Stress, and Scalability Testing 233
    Summary 238

    Chapter 12: Summary of Testing Quadrants      241
    Review of the Testing Quadrants 241
    A System Test Example 242
    Tests Driving Development 244
    Automation 245
    Critiquing the Product with Business-Facing Tests 248
    Documentation 251
    Using the Agile Testing Quadrants 252
    Summary 253

    Part IV: Automation      255
    Chapter 13: Why We Want to Automate Tests and What Holds Us Back      257

    Why Automate? 258
    Barriers to Automation—Things that Get in the Way 264
    Can We Overcome These Barriers? 270
    Summary 271

    Chapter 14: An Agile Test Automation Strategy        273
    An Agile Approach to Test Automation 274
    What Can We Automate? 279
    What Shouldn’t We Automate? 285
    What Might Be Hard to Automate? 287
    Developing an Automation Strategy—Where Do We Start? 288
    Applying Agile Principles to Test Automation 298
    Supplying Data for Tests 304
    Evaluating Automation Tools 311
    Implementing Automation 316
    Managing Automated Tests 319
    Go Get Started 324
    Summary 324

    Part V: An Iteration in the Life of a Tester      327
    Chapter 15: Tester Activities in Release or Theme Planning      329

    The Purpose of Release Planning 330
    Sizing 332
    Prioritizing 338
    What’s in Scope? 340
    Test Planning 345
    Test Plan Alternatives 350
    Preparing for Visibility 354
    Summary 366

    Chapter 16: Hit the Ground Running       369
    Be Proactive 369
    Advance Clarity 373
    Examples 378
    Test Strategies 380
    Prioritize Defects 381
    Resources 381
    Summary 382

    Chapter 17: Iteration Kickoff      383
    Iteration Planning 383
    Testable Stories 393
    Collaborate with Customers 396
    High-Level Tests and Examples 397
    Summary 403

    Chapter 18: Coding and Testing      405
    Driving Development 406
    Tests that Critique the Product 412
    Collaborate with Programmers 413
    Talk to Customers 414
    Completing Testing Tasks 415
    Dealing with Bugs 416
    It’s All about Choices 419
    Facilitate Communication 429
    Regression Tests 432
    Resources 434
    Iteration Metrics 435
    Summary 440

    Chapter 19: Wrap Up the Iteration       443
    Iteration Demo 443
    Retrospectives 444
    Celebrate Successes 449
    Summary 451

    Chapter 20: Successful Delivery       453
    What Makes a Product? 453
    Planning Enough Time for Testing 455
    The End Game 456
    Customer Testing 464
    Post-Development Testing Cycles 467
    Deliverables 468
    Releasing the Product 470
    Customer Expectations 475
    Summary 476

    Part VI: Summary      479
    Chapter 21: Key Success Factors       481

    Success Factor 1: Use the Whole-Team Approach 482
    Success Factor 2: Adopt an Agile Testing Mind-Set 482
    Success Factor 3: Automate Regression Testing 484
    Success Factor 4: Provide and Obtain Feedback 484
    Success Factor 5: Build a Foundation of Core Practices 486
    Success Factor 6: Collaborate with Customers 489
    Success Factor 7: Look at the Big Picture 490
    Summary 491

    Glossary      493
    Bibliography      501
    Index      509

    Lisa Crispin is dedicated to helping agile teams and testers discover good ways to deliver the best possible product. She specializes in showing testers and agile teams how testers can add value and how to guide development with business-facing tests. Since 2003, she’s been a tester on a Scrum/XP team at ePlan Services, Inc., and frequently leads tutorials and workshops on agile testing at conferences. Lisa regularly contributes articles about agile testing to publications such as Better Software magazine, I EEE Software, and Methods and Tools. Lisa also coauthored Testing Extreme Programming (Addison-Wesley, 2002) with Tip House.

    Janet Gregory is the founder of DragonFire, Inc., an agile quality process consultancy and training firm. Her passion is helping teams build quality systems. Since 1998, she has worked as a coach and tester introducing agile practices into both large and small companies. Her focus is working with business users and testers to understand their role in agile projects. Janet is a frequent speaker at agile and testing software conferences, and she is a major contributor to the North American agile testing community.

    Testing is a key component of agile development. The widespread adoption of agile methods has brought the need for effective testing into the limelight, and agile projects have transformed the role of testers. Much of a tester’s function, however, remains largely misunderstood. What is the true role of a tester? Do agile teams actually need members with QA backgrounds? What does it really mean to be an “agile tester?”

    Two of the industry’s most experienced agile testing practitioners and consultants, Lisa Crispin and Janet Gregory, have teamed up to bring you the definitive answers to these questions and many others. In Agile Testing, Crispin and Gregory define agile testing and illustrate the tester’s role with examples from real agile teams. They teach you how to use the agile testing quadrants to identify what testing is needed, who should do it, and what tools might help. The book chronicles an agile software development iteration from the viewpoint of a tester and explains the seven key success factors
    of agile testing.

    Readers will come away from this book understanding

    • How to get testers engaged in agile development
    • Where testers and QA managers fit on an agile team
    • What to look for when hiring an agile tester
    • How to transition from a traditional cycle to agile development
    • How to complete testing activities in short iterations
    • How to use tests to successfully guide development
    • How to overcome barriers to test automation

    This book is a must for agile testers, agile teams, their managers, and their customers.

    Additional information

    Dimensions 1.20 × 6.90 × 9.10 in
    Series

    Imprint

    Format

    ISBN-13

    ISBN-10

    Author

    ,

    BISAC

    Subjects

    professional, higher education, Employability, IT Professional, Y-AB SOFTWARE METHODS, COM051330