The agile tester
Upcoming SlideShare
Loading in...5
×
 

The agile tester

on

  • 1,512 views

 

Statistics

Views

Total Views
1,512
Views on SlideShare
1,512
Embed Views
0

Actions

Likes
1
Downloads
66
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

The agile tester The agile tester Document Transcript

  • WHITE PAPERTHE AGILE TESTERJoEllen CarterEXECUTIVE SUMMARY CONTENTS Executive Summary ..................................................................................... 1 Introduction..................................................................................................... 1 Traditional QA ................................................................................................ 1 Agile Testing Explained ............................................................................. 2 New Skills for the Agile Tester ............................................................... 2 The Tester and the Team ...........................................................................3 Conclusion ......................................................................................................6INTRODUCTION A mature QA process serves an important purpose, one which must be retained in the transition to agile.TRADITIONAL QA 1
  • WHITE PAPERIn addition, business requirements often change after test tester on the agile team provides early feedback during allcases are developed, requiring extensive test case re- stages of development, helps or is cognizant of code-levelwrites and test plan changes, if the requirement changes testing being performed, takes the lead on acceptanceare communicated to both development and QA. If test automation building regression test plans andrequirement changes aren’t communicated consistently, uncovers additional test scenarios through exploratorythere’s a risk that business analysts, developers and QA testing.may have different expectations of the final product. In addition, the agile tester ensures acceptance testAs test case automation has become increasingly coverage is adequate, leads automation efforts onimportant, QA teams have had to incorporate another integrated, system-level tests, keeps test environmentssignificant activity into the workflow. Larger organizations and data available, identifies regression concerns andmay have a completely separate automation group that shares testing techniques. Additional testing, such asdelivers automated test cases to the QA product team. performance and regression testing, that falls outside theThis adds another layer of required communication to an scope of story-level testing, can be addressed throughalready significant load. test-oriented stories, which are estimated, planned and tracked just like a product-oriented story.Finally, since QA is usually the last activity before afixed release date, many planned QA activities may get NEW SKILLS FOR THE AGILE TESTERsqueezed from the schedule, compromising productquality. Transitioning from a QA Engineer to an agile tester means more than a change in when the product is tested andAGILE TESTING EXPLAINED how much of it is tested at a time. There’s a new paradigm for the agile tester — instead of being the Quality Police,Agile testing follows a more fluid, continuous process the agile tester is a team player and works with the teamwhich takes place hand-in-hand with development to get each story to done. There are several skills thatand product management. An agile team doesn’t do make this paradigm shift a bit easier.all of the requirements work for a system, then all ofthe development work and then all of the testing work Team Memberconsecutively. Instead, the agile team takes a small pieceof the system and works together to complete that piece The agile tester is a full-fledged, first-class member ofof the system. The piece may be infrastructure-related, the agile team. The agile tester participates in planning,feature development or a research spike. Then the team estimating, scheduling, retrospectives and any other teamtakes on another small piece and completes that piece. activities. Testers are generally thoughtful, analyticalThe project marches toward completion piece by piece. problem solvers and often add a unique perspective to the team in terms of identifying potential road blocksCompleting a piece of the system, referred to as a story and dependencies early in the process. Testers need toor backlog item, means that product management, participate as members of the agile team, not just the QAdevelopment and testing work together toward a team, to bring this information to the team’s attention ascommon goal. The goal is for the story to be ‘done.’ soon as possible.Stories are identified and prioritized by the productowner, who manages the backlog. Stories are selected Exploratory Testingbased on their priority and effort estimate. The effort Business requirements on an agile project may not beestimate is another team activity, which also includes as concrete as requirements on a traditional project;testers. The team also identifies dependencies, technical agile methods accept that change is a healthy and realchallenges, or testing challenges. The whole team agrees part of software development. This means that test caseon final acceptance criteria for a story to determine when generation may not be as cut-and-dry as it was in theit’s ‘done’. past. Exploratory testing is an essential skill to uncoverDuring an iteration, several stories may be in various additional considerations for the product owner tostages of development, test, or acceptance. Agile evaluate. James Bach, Cem Kamer and other members oftesting is continuous, since everyone on an agile team the agile testing community have contributed numeroustests. However, both the focus and timing of testing is excellent publications on exploratory testing techniques.different depending on what type of testing is performed.Developers take the lead on code-level tests, while theThe Agile Tester 2
  • WHITE PAPERAutomationAgile emphasizes automating as much as possible.Agile works best with some level of automation. Butmany teams struggle with when, how much and whattools to use. While continuous integration (CI) is anaccepted developer practice, the agile tester takes thelead on incorporating automated acceptance tests intoCI and raising the visibility of end-to-end and scenariotesting results. Automation is not a separate project or atester-only activity and it’s not just test case automation:is part of the story delivery process. Automation isanything that allows the team to work faster and thewhole team supports it.CommunicationQA Engineers tend to rely on documents. Agile testersdon’t get a big requirements document as a basis fortest cases and don’t get three months to write test casesbefore they see a working piece of code. They jumpinto the communication stream, which may be verbal,written, or virtual and assimilate the information theyneed. They learn to ask the right questions at the righttime and provide the right level of feedback at the righttime.THE TESTER AND THE TEAMA single story walkthrough demonstrates what an agile tester does as part of an agile team. Here’s a simple story thatmight be presented to an agile team:An agile tester will contribute to the team from the time the story is presented to the team to when it’s completed, notjust during testing. Let’s look at specific contributions during these phases of work: Story Exploration Estimation Story Planning Story Progression Story AcceptanceThe Agile Tester 3
  • WHITE PAPERStory ExplorationA story does not magically appear. There’s been work to get it to the team for implementation. The product owner hasresearched the functionality, prioritized, ranked and sequenced it with other stories. However, this work has not beendone in a vacuum. Communication within an agile team is constant. Information flows between the product owner,developers and testers continuously. The product owner may groom the backlog, but not without input and consensusfrom the rest of the team. The product owner keeps the whole team aware of the product roadmap and future featuresthat are targeted for implementation. Every team member has some level of knowledge about the story and how it fitsinto the big picture.The product owner shares this information through: Visible product roadmap Release overviews Iteration planningWhen it’s time to schedule a story, the whole team will gather to explore the story and make sure everyone on the teamunderstands the scope. An agile tester might ask questions to clarify the scope of the story. Is this option only on the login page? Has the application sent email before, or is that a new interface?The agile tester might also ask questions to clarify any vagueness in the story. What does it mean for an email address to be ‘unknown’? What does it mean to ‘require confirmation’ of the password?Asking questions at this point is a delicate skill. It’s expected that there will be some unknowns in the system at thispoint and there’s a certain amount of discovery that will be done as the story progresses. The idea here is to get justenough clarity to be able to estimate the story, which is the next step. After refinements to the story, it might look likethis: Notice how much more ‘testable’ the story became. The additional detail and clarification is valuable as the team prepares to estimate the size of the story. Estimation Estimation is another team activity to which agile testers should contribute. Different teams estimate at different times. One team might estimate as part of iteration planning. Another team might estimate as part of release planning. Yet another team might estimate at a high level for release planning purposes and then by more detailed story points in iteration planning. Every team needs to find what works for their team, including how to treat testing.The Agile Tester 4
  • WHITE PAPERThe Agile Tester 5
  • WHITE PAPER CONCLUSION AUTHOR’S BIO ABOUT VERSIONONE VersionOne is recognized by agile practitioners as the leader in agile project management tools. By simplifying the planning and tracking of agile projects, we help teams deliver better software faster. Since 2002, companies such as Adobe, Dow Chemical, Lockheed Martin, Motorola, Novell, Sony and Symantec have turned to VersionOne. Today more than 30,000 teams from over 170 countries use VersionOne. Start small. Scale smart. See for yourself at www.VersionOne.com. © 2010, VersionOne, Inc. All Rights Reserved. The Agile Management Company. V1_0410The Agile Tester 6