Software testing trends follow the software industry. So, let’s look at the software industry and see how it’s changes affect software testing and how we need to change our outlook, methods and skills.
SaaS Business Model: Software As A Service has really changed the way that users think about software. Rather than purchasing, they are now renting. When we buy versus rent a house, we think about permanency. Will I be there long? Can I get a return on my investment? When we rent an apartment, we think; is it convenient? If my job moves, can I get out of the lease? So, SaaS means users are thinking the same thing. Users will move out quickly if you don’t provide what they want, when they want it.
In terms of software QA, that means we need to pay attention to user experience, user satisfaction, and performance. Especially with mobile platforms, if your app has low performance or is difficult to learn, your users go elsewhere, FAST.
Shorter Development Cycles: With agile development, development cycles are now as short as a few days, or a week or two. That means the days of throwing software over the wall to QA are gone.
In terms of software QA, that means we need to sharpen our skills. The days of manual monkey testing are gone. We need to work closer with developers and understand their thinking and their terms, and sometimes even understand their code. We need to be nimble, and adapt to changing schedules and requirements. We can’t just plug along and find defects. We need to be involved in product requirements, documentation and much more.
Changing User Expectations: When the internet first burst onto the scene, it was good enough just to have a rudimentary informational website with a contact page. Expectations have increased dramatically. Not only do users expect more than that, they expect social engagement and increase functionality, even a fully functional application. With mobile, last year, it was enough to have an m.sitename.com. Now, your mobile website is expected to be fully functional and streamlined for the most common user tasks.
In terms of software QA, that means we need to test new versions of web applications daily. There is almost no such thing as a formal ‘build’. Rather, web applications are fluid and changing in forever beta mode. In addition, with mobile platforms, the compatibility matrix just added another dimension. We need to think carefully about priorities and what platforms to test because we obviously can’t test them all.
Yes, the world of software is changing and software will play an increasing role in our lives. I watched for the nth time the other day, Terminator. I loved it again. Someday software will rule our lives. I hope software doesn’t become self-aware however :).