Why No One Talks About Agile Testing!
For some reason, web dev teams always find themselves slipping into the old way of testing. Why?
Join the DZone community and get the full member experience.Join For Free
when working on digital projects and products, you probably encounter the term "agile" a lot.
the word agile is widely used (and sometimes misused). it refers to the methodology of project management which strives to establish certain principles of collaboration, flexibility and transparency. it emphasizes the importance of feedback throughout the entire development workflow.
so when it comes to testing, web development teams go back to traditional approaches rather than following the agile path.
in this post, i’ll give you an overview on agile testing as well as some useful guides on how to get started with the idea of agile testing.
what is agile testing?
tl;dr: basically, agile testing means that you make use of the agile approach throughout your testing and bug tracking workflows .
when talking about agile testing, we need to go back one step and take a look at the general framework of web development .
in the old days, most web development and software engineering workflows were structured along the so-called waterfall framework.
more than a waterfall model
the waterfall approach basically states that every project step proceeds in a linear series of sequential steps. the workflow would look like this:
no workflow needed with agile?
this model of agile testing has been developed as a contra-framework to traditional, more bureaucratic workflows. although agile teams still need basic workflows, i want to highlight that agile itself doesn’t focus too much on workflows.
or as martin fowler puts it :
“agile methods are people-oriented rather than process-oriented.”
yeah. that’s great, since all efforts are worthless if people aren’t using the products we build, right?
workflows are pretty static and resistant to change, but people are adaptive and thrive with change. sometimes people are even changing themselves.
speed up the development cycle with continuous feedback
so this consistent state of change requires us to put continuous feedback at the core of our projects and project efforts. being agile also means providing touch points for continuous feedback.
though it’s nothing new, feedback is key. continuously asking for feedback throughout the entire project requires a feedback culture where people are pushed to evaluate what they are doing on a daily basis.
testing the agile way
the traditional way of testing basically states: specify the requirements, do the development and test it. execution of those tests happens at the end of the project. this is also called the “test-last” approach.
on the other hand, testing first has a lot of benefits. that is why i strongly recommend defining tests at the same time that you are specifying your requirements.
this not only gives you a clear overview of what needs to be done and which goals you share, but it also helps you to specify your requirements in more detail.
wrapping it up
agile has won the game in software engineering. so why not make use of agile testing as well? continuous deployment and testing is becoming the norm. therefore, software testing must make its switch from its current role to a more flexible and efficient one when it comes to getting things tested.
testing is not a phase anymore. ensuring continuous progress means ensuring continuous test and feedback cycles.
this article was brought to you by usersnap – a visual bug tracking and screenshot tool for every web project.
Published at DZone with permission of Thomas Peham. See the original article here.
Opinions expressed by DZone contributors are their own.