Agile testing has to work with the Agile lifecycle and processes adopted by your team. For example, if you adopt the Scrum methodology, that means you will have to conduct your testing within the Sprint cycles. Agile is about incremental development. So small pieces of functionality are delivered during each iteration. The challenge here is to ensure that new functionality does not break existing functionality. The typically shorter iteration duration of Agile methodology makes this more demanding.
How to Troubleshoot Apps for the Modern Connected Worker
Agile Testing Methodology , Agile Lifecycle and Processes
1. Agile Testing
Agile testing has to work with the agile lifecycle and processes adopted by your team. For
example, if you adopt the Scrum methodology that means you will have to conduct your testing
within the Sprint cycles. Agile is about incremental development. So small pieces of functionality
are delivered during each iteration. The challenge here is to ensure that new functionality does
not break existing functionality. The typically shorter iteration duration of agile methodology
makes this more demanding.
Agile teams have typically tried to adopt Test-Driven Development (TDD) as a solution for
testing needs. This is a good solution in many respects, but care has to be taken to implement
TDD properly. For example, discussions about TDD usually tend to focus on unit test coverage,
which is a major subset, but not the only aspect of testing. Automated testing should also cover
system-level testing and workflows that cover functionality across multiple modules. 100% code
coverage may sometimes be misleading because workflows may require additional tests.
Note also that automated testing is not the entirety of testing either. Performance testing, user
interface testing, etc. are other aspects of testing that sometimes require manual effort both
from the development team as well as from customers. Much of this requires time as in calendar
time. Even running an entire suite of automated tests for a large product requires time. If you
have teams working across the clock in different geographic regions, you may not get the luxury
of downtime for automated tests to run at “night”.
All this points to better management of the iteration cycle. Management includes project
management in terms of setting the necessary time to run through necessary regression tests,
which may include a battery of automated tests and manual testing. The manual testing may
involve full regression or segmented regression. Configuration management is also necessary
to ensure that the right pieces are being tested and deployed. The larger the project gets, the
more important it is to get better quality tools and implement better processes to keep a handle
on things.
Visit IVESIA’S WEBSITE Follow us at LINKEDIN and TWITTER