As I’m sure you already know, a monumental shift from desktop to mobile is upon us. Not only have consumer applications started leaving the desktop behind, but B2B applications are also starting their migration – like a flock of elderly pelicans, they spread their wings to follow the younger seafowl. And although it may prove difficult to envision a tablet version of your favorite word processor or spreadsheet, rest assured that someone will tackle that shift head-on, using a mobile-inspired touch-driven UI with all the bells and whistles the mobile experience makes possible, to rescue word processing or spread-sheeting from the grey, aging cobwebs spreading over your desktop.
Thinking as a developer, I'm excited for this shift to happen for everyday development. When I’m into some coding project – be it big or small – my mind is constantly occupied with solving hands-on coding problems. How should I structure my code? What feature should I add next? How am I going to squash that bug? What sorting algorithm should I use? Being able to solve those problems quickly and easily on a tablet and “on the go” would be a dream come true – the spontaneous and creative nature of development nurtured to a full bloom. Of course, the actual processes for compiling, running integration tests and executing builds might well be on a server in the cloud somewhere, which is even better as it would allow me to pick up on my line of thought from wherever I am, whenever I want to.
The same should apply for testing; as many passionate testers will tell you, testing for them is just as creative a practice as coding is for me. They carry their tester curiosity with them at all times, always thinking about how to challenge their target applications and break them. To me, they seem to be perfect for a mobile mini-revolution; not only should they be testing mobile apps, the whole quality lifecycle should be available at their fingertips on their mobile devices: test design and management, exploratory testing, test recording and execution, regression testing, etc. Considering the fact that many applications have a mobile component, it makes perfect sense for testers to be engaged and involved. They have to be tested “in the wild” with fragile networks, bad positioning signals and dwindling batteries. Empowering testers with the ability to perform their testing (be it automated or exploratory) in the same environment as the end user - on trains, in tunnels, in cities, in the country, etc. – is extremely valuable because this is usually where things go wrong in the end, and not in your test lab at the office.
So will it happen? Will testers be among the first IT professionals to shift their toolset and workflows from desktops and laptops to tablets and mobile devices?
Unfortunately, probably not.
Testing and Quality Assurance as a whole seems to be a conservative domain, both from a tooling and process perspective, and as a group, testers have often been slow to adopt many of the ongoing trends in development (agile, automation, DevOps, etc.) – their adoption has been less proactive and more reactive. To a certain extent this “coming late” is perhaps attributable to the tester mindset -questioning and probing before embracing. Unfortunately, I also think testing as a profession and practice has generally been kept short in larger organizations and not seen as a target for investment and innovation.
But the shift presents one hurdle for testing: the anti-tool movement. Many testers refrain from using tools in general, as they don’t want to be “trapped” in a tool-imposed line of thought. Many testers feel (with good reason!) that tools block their creativity and make it more difficult to think out of the box, an essential to successful testing. They have a point; you should be in control of the process and tools, not the other way around. But since testers are also the ones driving tool creation, and given how uncharted this territory is, testers could see mobile as an opportunity to build tools the way they want or need them -- unobtrusive, modern -- dare I say “agile”?
Perhaps this is the opportunity to propel testing and testers to the forefront of software technology – no more backwaters of VBA macros and archaic scripting languages. Bring on the touch interface to capture and facilitate the graceful art of testing all around us – everywhere – at all times!
This post originally ran on Ole’s Software Quality column in Network World.