Created by Materia for OpenMind Recommended by Materia
4
Start Can Your Startup Do Without Software Testing?
28 March 2018

Can Your Startup Do Without Software Testing?

Estimated reading time Time 4 to read

When you are just starting as a new company, due to inherent constraints involved you could be tempted to cut corners and take the minimum viable product approach to the limit. However, skipping quality assurance is not only the fastest way out of the market, but it is one that will surely prevent you from successfully launching other initiatives once you have learned your lesson. To put it short, it is not a matter of affording to test your products. The reality is that as a startup you can’t afford not to test.

Cost of Bugs

Startups can learn from the mistakes of large organizations who did not test their products sufficiently before launching. For example, when healthcare.gov crashed it raised its final cost threefold to $292 million, and this is just a tiny fraction of the overall costs of software failure.

Quality Control is not Optional

IBM released a comparison of the costs associated with discovering an error at different stages. The multipliers were 5x for the implementation phase, 10x for integration testing and 30x after the product is released on the market. So, the idea of ‘fail fast, fail often’ is a cost saver here.

Developers as Testers

As a tech startup, you have strived to find the best developers that money can get you, or you are one yourself. In an effort to bootstrap, you can assume that an excellent developer can double as a tester, but this approach is, in fact, costlier than hiring a dedicated tester for multiple reasons.
The first explanation is that the programmer’s abilities surpass those of a tester, and for 80% of the testing work there is no need for coding skills. / Photo by Glenn Carstens-Peters on Unsplash
Those could be put to better use. Another motivation is that a developer knows the ins and outs of the code so well that it fails to see obvious flaws. Finally, since they have higher technical skills, developers have a hard time acting as a regular end-user and might assume some operations are straightforward when, in fact, they need more work.

Limitations

Even if you understand the downsides of not dedicating enough time to testing, the first things that still come to your mind as a startup entrepreneur are your obstacles. These include the lack of time, money or other resources to allocate to testing. Knowing such limitations can help you define your strategy, but under no circumstances should that mean dismissing testing altogether.
  • Time: Under constant pressure to release a minimal viable product fast to start earning some revenue, it would seem like a good idea to let the market identify the bugs and fix them later. Also, you don’t have enough time to conduct in-depth interviews and assemble a team of testers alongside your programmers. However, you also don’t have time to rework the same piece of code a couple of times or going through the whole software every time you make changes.
  • Resources: Working in a startup comes with the excitement and the burden of wearing multiple hats. You won’t have a dedicated testing department, but you could have a tester/social media manager or similar. It is a matter of having two heads that are better than one. Also, you might learn that you don’t have all the tools you need or can only afford limited free versions. Testing specialists from A1QA advise entrepreneurs to find those packages that allow the pay-per-use scheme instead of going with other products developed by startups just like yours that could have numerous bugs of their own.
  • Money: This is the primary pain point of most startups, and the first reason named when testing is under questioning. Of course, additional headcount means extra money, but there is always the option to delegate just the testing part to a dedicated company, using a pricing model that suits your scale and budget.

Automation vs. Manual Testing

Bearing in mind the usual constraints, another choice to be made is between automated and manual testing. It is advisable to start with manual testing, at least at the early development stages. / Photo by h heyerlein on Unsplash
Having the opportunity to deal with the software directly gives your testers an idea about which procedures could be turned into scripts and automated, and what constitutes an exceptional case and would rather be tested by hand.  Manual testing also ensures the UI is in line with best practices – an aspect that automated tests have a hard time understanding. A simple approach adapted to a startup’s shoestring budget is to tap into every team member’s inner tester and ask for feedback. Of course, this is not an ideal process, but it could save you some money, at least in the design and planning phases.
Automation can by no means replace human testing, it is just a way to take some tedious work out from the tester’s hands and ensure higher accuracy, especially for large-scale, repetitive tasks. It eliminates human mistakes and can be a good choice at later development stages or after the release during the product maintenance phase, when regular updates still need to be checked for quality. Automation is also more expensive since scripting requires more coding skills.
 Testing means that the product you present to your clients not only satisfies functionality demands, but it is also robust, reliable and easy to use. Creating a testing strategy should be part of your core values. A company just stating out, can only stand out from its competitors by its quality and reliability.

Agile Testing

The best way to get ahead is to integrate manual testing in each phase of the process. As this process matures, it is a good practice to automate the most common parts. Working in small sprints and ensuring the reliability of each component before moving on is a way to ensure there will be no significant reworks once the product is released on the market.

Jasmine Morgan

Software consultant

Related publications

Comments on this publication

Write a comment here…* (500 words maximum)
This field cannot be empty, Please enter your comment.
*Your comment will be reviewed before being published
Captcha must be solved