Agile Tester
- Glasdon Falcao
- Aug 19, 2016
- 5 min read
A Tester Mindset
A professional tester approaches a product with the attitude that the product is already broken - it has defects and it is their job to discover them. They assume the product or system is inherently flawed and it is their job to ‘illuminate’ the flaws. This mindset is necessary if appropriate testing is to be done.
What are Agile Testers?
Testing in an agile environment is different that the traditional methodologies such as waterfall. Agile is an iterative model of delivery which requires continuous collaboration between the team members, providing quick feedback and be able to self-manage.
A good agile tester knows that his job is not limited to only executing test scripts, reporting defects and signing off on releases. Testing is only a portion of the wider quality assurance practice.
Testing is no longer a phase in agile software delivery. It’s a continuous activity before, during and after each sprint. In an agile team everyone is responsible for the quality of the software and quality should be baked in right from the start and not an afterthought.
If any of the stakeholders, BAs, Developers or even other testers in the team are not quality focused, it is the job of the tester to remind the team about the consequences of ignoring good practices to build a quality software.
Quite often there are challenges in testing in an agile environments such as lack of documentation, changing priorities, less time to test, but with the right mindset and attitude, testers in agile team can provide a lot of value and help the team deliver good quality software on continuous basis.
In an Agile team, to understand and work with this challenges, testers must closely collaborate with all other team members and with business stakeholders. This has a number of implications in terms of the skills a tester must have and the activities they perform within an Agile team.

An Agile Testing Mindset
Agile Testers need to break away from the principles and working methodologies of traditional software development. In order to succeed as an Agile Tester, the right mindset is required.
The Agile Testing Mindset, could be summed up in twelve principles:
Quality Assistance over Quality Assurance
Continuous Testing over Testing at the End
Team Responsibility for Quality over Tester’s Responsibility
Whole Team Approach over Testing Departments and Independent Testing
Automated Checking over Manual Regression Testing
Technical and API Testing over Just GUI Testing
Exploratory Testing over Scripted Testing
User Stories and Customer Needs over Requirement Specifications
Building the Best Software over Breaking the Software
Early Involvement over Late Involvement
Short Feedback Loop over Delayed Feedback
Preventing Defects over Finding Defects
What Skills Should an Agile Tester Have?
In addition to the skills required for a tester working in a traditional waterfall project, a tester in an Agile team should be competent in test automation, test-driven development, acceptance test-driven development, white-box, black-box, and experience-based testing.
As Agile methodologies depend heavily on collaboration, communication, and interaction between the team members as well as stakeholders outside the team, testers in an Agile team should have good interpersonal skills. Testers in Agile teams should:
Be positive and solution-oriented with team members and stakeholders
Display critical, quality-oriented, skeptical thinking about the product
Actively acquire information from stakeholders (rather than relying entirely on written specifications)
Accurately evaluate and report test results, test progress, and product quality
Work effectively to define testable user stories, especially acceptance criteria, with customer representatives and stakeholders
Collaborate within the team, working in pairs with programmers and other team members
Respond to change quickly, including changing, adding, or improving test cases
Plan and organize their own work
The Role of a Tester in an Agile Team
The role of a tester in an Agile team includes activities that generate and provide feedback not only on test status, test progress, and product quality, but also on process quality. These activities include:
Understanding, implementing, and updating the Agile Test Strategy
Work with Product Owners to define Acceptance Criteria and the Definition of Done.
Measuring and reporting test coverage across all applicable coverage dimensions
Ensuring proper use of testing tools
Configuring, using, and managing test environments and test data
Writing and executing automated checks and reporting back to the team
Reporting defects and working with the team to resolve them
Coaching other team members in relevant aspects of testing
Ensuring the appropriate testing tasks are scheduled during release and iteration planning
Actively collaborating with developers and business stakeholders to clarify requirements, especially in terms of testability, consistency, and completeness
Participating proactively in daily standup meetings, story grooming sessions, team retrospectives, suggesting and implementing improvements
Within an Agile team, each team member is responsible for product quality and plays a role in performing test-related tasks.
What do Agile Testers do and how can they add value in Agile projects?
A tester on an Agile project will work differently than one working on a traditional project. Testers must understand the values and principles that underpin Agile projects, and how testers are an integral part of a whole-team approach together with developers and business representatives.
The members in an Agile project communicate with each other early and frequently, which helps with removing defects early and developing a quality product.
It is important to note that testers in Agile projects, don’t just focus on testing the product to find bugs, rather the focus should largely be on improving the processes to prevent defects, and testers play an important role in this.
Here, we look at how Agile Testers can add value in each stages of the software delivery in an Agile setup.
Agile Testers Adding Overall Value
Testers are involved in defining the overall quality and approach to testing and especially add value in the following activities:
Agile Test Strategy
Agile Test Automation Strategy
Delivery Pipeline
Advocating Whole-team Approach
Define Test Environments
Agile Testers Adding Value in Pre-Planning
Testers are involved in Pre-planning and Story grooming sessions and especially add value in the following activities:
Defining testable user stories, including acceptance criteria
Determining the testability of the user stories
Creating acceptance tests for the user stories
Participating in project and quality risk analyses
Agile Testers Adding Value in Sprint Planning
Testers are involved in Sprint planning meetings and especially add value in the following activities:
Planning the testing for the release
Participating in the detailed risk analysis of user stories
Creating acceptance tests for the user stories
Defining the necessary test levels
Breaking down user stories into tasks (particularly testing tasks)
Estimating testing effort associated with the user stories and all testing tasks
Identifying functional and non-functional aspects of the system to be tested
Supporting and participating in test automation at multiple levels of testing
Agile Testers Adding Value During Sprint
Testers are involved during Sprint and especially add value in the following activities:
Performing Exploratory Testing of new Features
Writing Automated Regression Tests for new and existing features
Integrating and Executing Automated Tests on a CI server
Feedback as soon as possible to the team in case of any issues
Update Acceptance Tests when new scenarios are thought of
Risks Of Being A Agile Tester
Agile organizations may encounter some test-related organizational risks:
Testers work so closely to developers that they lose the appropriate tester mindset
Testers become tolerant of or silent about inefficient, ineffective, or low-quality practices within the team
Testers cannot keep pace with the incoming changes in time-constrained iterations
Comments