You are previewing More Agile Testing: Learning Journeys for the Whole Team.
O'Reilly logo
More Agile Testing: Learning Journeys for the Whole Team

Book Description

Janet Gregory and Lisa Crispin pioneered the agile testing discipline with their previous work, Agile Testing. Now, in More Agile Testing, they reflect on all they’ve learned since. They address crucial emerging issues, share evolved agile practices, and cover key issues agile testers have asked to learn more about.

Packed with new examples from real teams, this insightful guide offers detailed information about adapting agile testing for your environment; learning from experience and continually improving your test processes; scaling agile testing across teams; and overcoming the pitfalls of automated testing. You’ll find brand-new coverage of agile testing for the enterprise, distributed teams, mobile/embedded systems, regulated environments, data warehouse/BI systems, and DevOps practices.

You’ll come away understanding

• How to clarify testing activities within the team

• Ways to collaborate with business experts to identify valuable features and deliver the right capabilities

• How to design automated tests for superior reliability and easier maintenance

• How agile team members can improve and expand their testing skills

• How to plan “just enough,” balancing small increments with larger feature sets and the entire system

• How to use testing to identify and mitigate risks associated with your current agile processes and to prevent defects

• How to address challenges within your product or organizational context

• How to perform exploratory testing using “personas” and “tours”

• Exploratory testing approaches that engage the whole team, using test charters with session- and thread-based techniques

• How to bring new agile testers up to speed quickly–without overwhelming them

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

Table of Contents

  1. About This eBook
  2. Title Page
  3. Copyright Page
  4. Praise for More Agile Testing
  5. Dedication Page
  6. Contents
  7. Foreword
  8. Foreword
  9. Preface
    1. Who Is This Book For?
    2. Acceptance Tests
    3. How to Read This Book
      1. Part I: Introduction
      2. Part II: Learning for Better Testing
      3. Part III: Planning—So You Don’t Forget the Big Picture
      4. Part IV: Testing Business Value
      5. Part V: Investigative Testing
      6. Part VI: Test Automation
      7. Part VII: What Is Your Context?
      8. Part VIII: Agile Testing in Practice
      9. Other Elements
    4. Experiment!
  10. Acknowledgments
  11. About the Authors
  12. About the Contributors
  13. Part I: Introduction
    1. Chapter 1. How Agile Testing Has Evolved
      1. Summary
    2. Chapter 2. The Importance of Organizational Culture
      1. Investing Time
      2. The Importance of a Learning Culture
      3. Fostering a Learning Culture
      4. Transparency and Feedback Loops
      5. Educating the Organization
      6. Managing Testers
      7. Summary
  14. Part II: Learning for Better Testing
    1. Chapter 3. Roles and Competencies
      1. Competencies versus Roles
      2. T-Shaped Skill Set
      3. Generalizing Specialists
      4. Hiring the Right People
      5. Onboarding Testers
      6. Summary
    2. Chapter 4. Thinking Skills for Testing
      1. Facilitating
      2. Solving Problems
      3. Giving and Receiving Feedback
      4. Learning the Business Domain
      5. Coaching and Listening Skills
      6. Thinking Differently
      7. Organizing
      8. Collaborating
      9. Summary
    3. Chapter 5. Technical Awareness
      1. Guiding Development with Examples
      2. Automation and Coding Skills
      3. General Technical Skills
      4. Development Environments
      5. Test Environments
      6. Continuous Integration and Source Code Control Systems
      7. Testing Quality Attributes
      8. Test Design Techniques
      9. Summary
    4. Chapter 6. How to Learn
      1. Learning Styles
      2. Learning Resources
        1. Conferences, Courses, Meet-ups, and Collaborating
        2. Publications, Podcasts, and Online Communities
      3. Time for Learning
      4. Helping Others Learn
      5. Summary
  15. Part III: Planning—So You Don’t Forget the Big Picture
    1. Chapter 7. Levels of Precision for Planning
      1. Different Points of View
        1. Product Release Level
        2. Feature Level
        3. Story Level
        4. Task Level
      2. Planning for Regression Testing
      3. Visualize What You Are Testing
      4. Summary
    2. Chapter 8. Using Models to Help Plan
      1. Agile Testing Quadrants
        1. Planning for Quadrant 1 Testing
        2. Planning for Quadrant 2 Testing
        3. Planning for Quadrant 3 Testing
        4. Planning for Quadrant 4 Testing
      2. Challenging the Quadrants
      3. Using Other Influences for Planning
      4. Planning for Test Automation
      5. Summary
  16. Part IV: Testing Business Value
    1. Chapter 9. Are We Building the Right Thing?
      1. Start with “Why”
      2. Tools for Customer Engagement
        1. Impact Mapping
        2. Story Mapping
        3. The 7 Product Dimensions
      3. More Tools or Techniques for Exploring Early
      4. Invest to Build the Right Thing
      5. Summary
    2. Chapter 10. The Expanding Tester’s Mindset: Is This My Job?
      1. Whose Job Is This Anyway?
        1. Business Analysis Skills
        2. UX Design Skills
        3. Documentation Skills
      2. Take the Initiative
      3. Summary
    3. Chapter 11. Getting Examples
      1. The Power of Using Examples
      2. Guiding Development with Examples
        1. ATDD
        2. BDD
        3. SBE
      3. Where to Get Examples
      4. Benefits of Using Examples
      5. Potential Pitfalls of Using Examples
        1. Getting Bogged Down in the Details
        2. Lacking Buy-in
        3. Too Many Regression Tests
        4. Not Enough Is Known Yet
      6. The Mechanics of Using Examples to Guide Coding
      7. Summary
  17. Part V: Investigative Testing
    1. Chapter 12. Exploratory Testing
      1. Creating Test Charters
      2. Generating Test Charter Ideas
        1. Exploring with Personas
        2. Exploring with Tours
        3. Other Ideas
      3. Managing Test Charters
        1. Session-Based Test Management
        2. Thread-Based Test Management
      4. Exploring in Groups
      5. Recording Results for Exploratory Test Sessions
      6. Where Exploratory Testing Fits into Agile Testing
      7. Summary
    2. Chapter 13. Other Types of Testing
      1. So Many Testing Needs
      2. Concurrency Testing
      3. Internationalization and Localization
      4. Regression Testing Challenges
      5. User Acceptance Testing
      6. A/B Testing
      7. User Experience Testing
      8. Summary
  18. Part VI: Test Automation
    1. Chapter 14. Technical Debt in Testing
      1. Make It Visible
      2. Work on the Biggest Problem—and Get the Whole Team Involved
      3. Summary
    2. Chapter 15. Pyramids of Automation
      1. The Original Pyramid
      2. Alternate Forms of the Pyramid
      3. The Dangers of Putting Off Test Automation
      4. Using the Pyramid to Show Different Dimensions
      5. Summary
    3. Chapter 16. Test Automation Design Patterns and Approaches
      1. Involve the Whole Team
      2. Starting Off Right
      3. Design Principles and Patterns
        1. Testing through the API (at the Service Level)
        2. Testing through the UI
      4. Test Maintenance
      5. Summary
    4. Chapter 17. Selecting Test Automation Solutions
      1. Solutions for Teams in Transition
      2. Meeting New Automation Challenges with the Whole Team
      3. Achieving Team Consensus for Automation Solutions
      4. How Much Automation Is Enough?
      5. Collaborative Solutions for Choosing Tools
      6. Scaling Automation to Large Organizations
      7. Other Automation Considerations
      8. Summary
  19. Part VII: What Is Your Context?
    1. Chapter 18. Agile Testing in the Enterprise
      1. What Do We Mean by “Enterprise”?
      2. “Scaling” Agile Testing
        1. Dealing with Organizational Controls
      3. Coordinating Multiple Teams
        1. A System Test Team and Environment
      4. Consistent Tooling
        1. Coordination through CI
        2. Version Control Approaches
        3. Test Coverage
      5. Managing Dependencies
        1. Working with Third Parties
        2. Involving Customers in Large Organizations
      6. Advantages of Reaching Out beyond the Delivery Team
      7. Summary
    2. Chapter 19. Agile Testing on Distributed Teams
      1. Why Not Colocate?
      2. Common Challenges
        1. Cultural Issues
        2. Language
        3. Time Zones
        4. Dependencies
        5. Planning
      3. Strategies for Coping
        1. Integrating Teams
        2. Communication and Collaboration
        3. Collaborating through Tests
      4. Offshore Testing
      5. Tool Ideas for Distributed Teams
        1. Communication Tools
        2. Collaboration Tools
      6. Summary
    3. Chapter 20. Agile Testing for Mobile and Embedded Systems
      1. Similar, Yet Different
      2. Testing Is Critical
      3. Agile Approaches
      4. Summary
    4. Chapter 21. Agile Testing in Regulated Environments
      1. The “Lack of Documentation” Myth
      2. Agile and Compliance
      3. Summary
    5. Chapter 22. Agile Testing for Data Warehouses and Business Intelligence Systems
      1. What Is Unique about Testing BI/DW?
      2. Using Agile Principles
      3. Data—the Critical Asset
      4. Big Data
      5. Summary
    6. Chapter 23. Testing and DevOps
      1. A Short Introduction to DevOps
      2. DevOps and Quality
      3. How Testers Add DevOps Value
      4. Summary
  20. Part VIII: Agile Testing in Practice
    1. Chapter 24. Visualize Your Testing
      1. Communicating the Importance of Testing
      2. Visualize for Continuous Improvement
      3. Visibility into Tests and Test Results
      4. Summary
    2. Chapter 25. Putting It All Together
      1. Confidence-Building Practices
        1. Use Examples
        2. Exploratory Testing
        3. Feature Testing
        4. Continual Learning
        5. Context Sensitivity
        6. Keep It Real
      2. Create a Shared Vision
      3. Summary
  21. Appendix A. Page Objects in Practice: Examples
    1. An Example with Selenium 2—WebDriver
    2. Using the PageFactory Class
  22. Appendix B. Provocation Starters
  23. Glossary
  24. References
  25. Bibliography
    1. Part I: Introduction
      1. Books
      2. Websites, Blogs, Articles, Slide Decks
    2. Part II: Learning for Better Testing
      1. Books
      2. Blog Posts and Online Articles
      3. Courses, Conferences, Online Communities, Podcasts
    3. Part III: Planning—So You Don’t Forget the Big Picture
      1. Books
      2. Articles, Blog Posts, Slide Decks
    4. Part IV: Testing Business Value
      1. Books
      2. Articles, Blog Posts, Slide Decks, and Websites
    5. Part V: Investigative Testing
      1. Books
      2. Articles, Blog Posts, Slide Decks, and Websites
    6. Part VI: Test Automation
      1. Books
      2. Articles, Blog Posts, Courses, Videos, Code Examples
    7. Part VII: What Is Your Context?
      1. Books
      2. Articles, Blog Posts, Slide Decks, Websites
    8. Part VIII: Agile Testing in Practice
    9. Tools (in Order by Tool Name)
  26. Index