Every day it seems like more and more websites and mobile apps hit the streets and as a software developer, time is money. You have to iterate quickly and get your product to market quickly. But you also need to deliver a product that is bug-free and attractive to your users. Automated testing can speed up this process and has recently become the go-to for many shops, but there is still a place for manual testers on your team.
Using both automated testing and manual testers will lead to a higher quality, more stable product. Let’s take a look at why manual testing is here to stay.
To Test From a Users Perspective
Only human testers can test an application as a user would and only a human tester can determine when something seems “off”. Automated scripts won’t pick up visual cues or notice these issues. When a tester interacts with an application as a user would, they’re able to discover usability issues and user interface glitches.
Exploratory (Ad Hoc) Testing
Ad hoc testing can only be performed manually. At least until our AI becomes sentient. Automated tests do what you tell them to do and it really isn’t possible to automate ad hoc testing. Exploratory testing is all about “exploring” the software and answering questions like “what happens if I do this”? It is testing without boundaries.
Automated Testing Isn’t Perfect
This is probably the biggest misconception about automated testing. Just because you have some tests automated doesn’t mean you can stop manual testing. First, you would need to create a LOT of automated tests to cover all the manual tests that are performed with every regression run and second, you need those tests to execute perfectly every time.
Anyone who’s worked with automated testing knows that it requires a lot of babysitting. It is rare that a run will execute perfectly and it is most often caused by the tests being unable to find a screen or field or other asset and nothing to do with the test itself. Manual testing doesn’t require all this babysitting and maintenance.
Not Everything Can Be Automated
Another misconception. Some things just can’t be or don’t make sense to automate. For example, if you need to verify something visually happening on the screen, it would be difficult to automate that. It can also be difficult to automate some mobile device functions like tapping or zooming. In scenarios such as these, manual testing would make more sense.
Manual Testing Uncovers Flaws In Our Logic
I can’t tell you how many times I’ve mindmapped a client’s application and uncovered a nasty flaw in their logic. Just looking at the app itself it isn’t evident, but when you get it down on paper, whoa! It’s not pretty. Automated testing will never uncover issues like this.
Manual Testing Is More Friendly & Flexible To Updates
Just like finding flaws in the logic, there are almost always updates and changes to functionality at some point along the way. Manual testing takes that in stride and just keeps going. Whereas automated testing has to take the tests affected by these changes, update them with the new functionality, publish them, then verify they run successfully. This process could take days and that’s if everything goes well. If they hit a snag, it could be a week or more. Meanwhile, that entire area is not getting tested during the daily automated test runs. Not a good situation to be in.
Automated Testing Takes Hours To Execute
If a developer checks something in and asks QA for a quick smoke test, manual testers can quickly and easily test the areas affected by the change to ensure all is well. Automated testing would have to run for hours to deliver the same results unless they created a smaller suite of tests just for that area, which would take some time. Manual QA would probably be finished testing by the time automation finished creating the bank of tests to run. However, in favor of automated testing, it would be a good idea to run the full suite in this scenario just to be sure that small change didn’t break anything outside the area being tested by manual QA. So in this scenario, the two could work hand-in-hand.
Automation For Stable Builds
You really don’t even want to think about automating your tests until you can consistently generate stable builds. If your QA is still running ad-hoc testing and finding a bunch of bugs, then automation isn’t right for you. Once your manual QA can generate test cases and execute them consistently, then you can start thinking about automation.
Negative testing can be performed more rigorously and reliably with manual testing. It can be difficult to get the results you want when automating negative tests.
Workarounds & Cascading Effects
With automation, if a test fails, you only see that failure as a result on the report. With manual testing, you can determine if there is a viable workaround and/or test to see if the failure affects other areas. It is very common for a bug in one area to affect multiple areas of an application.
While it may seem I am pro-manual testing and anti-automated testing, that isn’t the case. I believe a shop should employ both methods to truly have adequate coverage. It is almost impossible to automate all of your test cases and as your application grows, you will always be adding onto your list of test cases. Employing the services of a manual tester will ensure that your software is fully tested and free of any “gotchas” that could be catastrophic to your project.
If you ever need talented QA freelancers, look no further than VLG Ventures. We specialize in hiring top talent from sites like Upwork, LinkedIn, and Toptal for today’s busiest startups. Have a tight budget? No problem. We can find you freelancers that fit the tightest budgets and are passionate about the success of your project.
About VLG Ventures
VLG Ventures is a full-service Software QA staffing agency specializing in meeting the QA staffing needs of companies in the tech industry. We diligently recruit, screen, and hire top-rated QA freelancers for local and national companies, providing temporary, temp-to-hire, and permanent contracts based on customer needs.
We help our clients focus on their business by providing a turnkey staffing service. We handle all of the work associated with finding and screening candidates for your openings and even handle payroll for temp and temp-to-hire employees. VLG Ventures’s clients know that their positions will be filled with the industries brightest minds and elite professionals giving them peace of mind to focus on operations.
Come join our team! We believe in rewarding loyalty and excellent service! Our freelancers become eligible for performance bonuses after 90 days of continuous service with our clients. Because exemplary service should be recognized and rewarded.