A guide for adopting Agile Testing. Gives the overall framework, principles and practices. Starts with Introduction to Agile Testing and then moves on to cover technical practices, HR and training needs which need focus during implementation of Agile Testing.
3. Agile Testing
Role of testers
Testers objective is enable timely release of
quality software. They find and verify bugs as part
of this objective
Test early
Sensitise developers
towards planned
tests
Focus on buggy or
critical areas
Automate alongside
during Sprints
Reduce # of open
defects
Collaborate with
developers
(reproducing
defects, bug
verification etc.)
3Agile In Business Conference (c)
4. Testing upfront moves the powers the project ahead
Next Generation Testing Conference (c)
5. Test in parallel to SprintsTest within Sprint
Crispin’s Agile Testing Quadrants
Next Generation Testing Conference (c)
6. These tests will
be in parallel to
Sprints and
defects will be fed
into Product
Backlog
Testing activities within Sprint
Sprint
Test activities during Sprints
- User Story testing
- Sanity tests
User stories
- End-to-end
scenarios
- Load and
Performance tests
- Non Functional
tests
- Negative tests
- Exploratory tests
Test activities outside of Sprints
6Next Generation Testing Conference (c)
7. Parallel Testing Model
Sprint 1 Sprint 2
Functional tested package
Sprint 3
Dedicated
test phases
System &
NFR test
The Sprint build is taken up for End-to-end System tests, long running stability, load and
performance tests, multiple enviornment tests, exploratory tests and negative tests.
Defects
System &
NFR test
.....
Product
Backlog
Hardening Sprints
Next Generation Testing Conference (c)
9. Team Organization
Testers are part of the Scrum Teams
Testers activities are recorded and tracked as tasks in the Sprint Backlog
Testers take part in all Scrum Ceremonies – including daily stand-ups
One target for the unified Scrum team > to meet the Sprint objective
Next Generation Testing Conference (c)
10. Test Organization
Within Scrum teams
- Testers part of the Scrum teams
- Operationally reporting to Scrum Master; Officially
reporting to Test Manager
- Appraisal, Competency development taken care by
Test Manager
- Testers need to be good in inter-personal skills
- Testers need to be aware of white box techniques,
interpretation of logs, configuring and setting up
parameters etc.,
System test team
- Testers do not belong to Scrum teams
- Testers report to Test Manager
- Work on testing the software at System level and
for non-functional requirements
- Diversity in terms of technical skills is key. Each
tester has to be a stand-alone expert in a chosen
technical area as the breadth of testing would
typically involve multiple areas
10Next Generation Testing Conference (c)
12. Co-location of test team members
Developers, testers and product management teams sit in the same area.
More face-to-face communication and less reliance on emails. Quick
resolution of queries and open issues.
12Next Generation Testing Conference (c)
13. Critical success factors
Management focus for moving towards Agile1
Visibility of the project status and key metrics for all stakeholders2
A possible dip in productivity initially and a rebound afterwards3
Facilitating the transition with suitable trainings and coaching4
Transition with new processes and tools in tandem5
Office layout to reflect the new work culture6
13Next Generation Testing Conference (c)
14. Incentivize expected behavior
Innovative thinking
Identification of potential issues / risks
Free and open exchange of views
Problem resolution by concerned parties
Continuous improvement
14Next Generation Testing Conference (c)
15. Moving towards an Agile oriented culture
Agile Culture
Attention to detail Growth orientation
Outcome Orientation People Orientation
Team Orientation
Innovation and risk taking
15Next Generation Testing Conference (c)
16. Moving towards team culture
TeamsWorkgroups
Goal
Share Information Collective performance
Synergy
Neutral (sometimes negative) Positive
Accountability
Individual Individual and mutual
Skills
Random and varied Complementary
16Next Generation Testing Conference (c)
18. Nightly build & Automated test
Next Generation Testing Conference (c)
Code to verification cycle will be less than a day
Automated suite should grow with every Sprint
Focus on Critical functional areas for automated System test
Image: http://commons.wikimedia.org
19. Manage Test environments
• Have parallel or shadow (to system test) test
environments for testing during Sprints
• Focus on using simulators and test stubs
where necessary
Next Generation Testing Conference (c)
Primary ST environment Shadow environments for use by Scrum Team
20. Evolving Definition of Done
Complex
Moderate
Simple
Functional
tested
System tested Production
ready
SystemComplexity
Done Criteria
1
2
3
The gap between Sprint Done and being Production ready will be
tested during the hardening sprints
1
2
3
Web application for internal use
Device centric multi-
environment thick client
Domain centric external facing
web application
Next Generation Testing Conference (c)
21. Test throughout the Sprint
Next Generation Testing Conference (c)
Image: Agile Testing by Elisabeth Hendrickson
The user stories are to be tested throughout the Sprint and not just
when they are completed – and prevent clogging at the end
23. Re-skilling and competency building
- Automation has to
go hand in hand
during the Sprints.
- Automation
engineers need to
think beyond
standard tools and
look for custom
built test
automation suites
working in tandem
with standard tools
Building self-organized teams
Test Automation Tooling Problem solving Inter-personal skills
- Identify areas
where tools can be
applied
- Evaluation of new
tools for data
capture and analysis
- Project planning
and scheduling
- Problem
identification and
evaluation of
alternatives
- Work scoping,
constraint and risk
management
- Communication
and Presentation
skills
- Team work
- Negotiation skills
Training areas
Building technical Competence
23Next Generation Testing Conference (c)
25. Status Indicators
The Contra indicators
The positives
• Key end-to-end and Non Functional
requirements are tested early
• Defects in Discussion / Clarification /
Dispute mode are reduced
• Developers (along with testers) doing
informal testing in the test environment
• Testers supply all the details need for
developers for bug fixing: Logs,
environment, data snapshot etc.,
• Team members develop cross-functional
capabilities
• Continous improvement in ways of
working, technologies and tooling
+ • Conflict within teams
• No perpectible improvement in team
productivity or work output
• Social loafing: Individuals masking their
non-performance under a superior team
performance
• Increase in escape defects - Testers
getting influenced by development
team‘s thinking (?)
• Testing in Mini waterfall mode within
Sprints
-
25Next Generation Testing Conference (c)
26. S R V Subrahmaniam, Siemens Limited
NGTC Conference (c)
in.linkedin.com/in/subrahmaniamsrv/