Should Startups Forget About Software Testing?!
If your startup is just starting and you haven't even discovered PMF (Product Market Fit) yet, forget about software testing. You may find this word too sensational for an article in TestingPod. However, as you gain more consideration through this article, you may realize this suggestion may be realistic.
Fast Changing Business Environment
Startups are exciting and really, really tough. As Ben Horowitz wrote in his famous book, "The Hard Thing About Hard Things", entrepreneurs have to face numerous challenging situations more than we could ever imagine. Product quality is not the first thing to consider yet. Quality is essential, but there are many things other than software testing for startups to keep running the business. Software testing is not for startups in the early stage.
Consider the initial state of the business scale until the product discovers the PMF, which is the early stage of every startup. At this scale, where you can still have a company-wide party just with two pizzas, you should scrap and build repeatedly until finding a sellable product. The cycle can be swift to get as close to success as quickly as possible. The product code written in the morning may be discarded in the evening.
How would product quality be defined in such a situation? If the quality requires the highest security, thorough security tests will be conducted. If the requirement is that "not a single character in the layout is corrupted", the user interface will be thoroughly checked to ensure that it is under the specifications. Of course, these requirements are impossible in startups without any special conditions. If your startup approaches the medical sector or other segments requiring severe quality, please adapt (and forget this article).
Product as a Prototype
You can imagine that a startup that invests excessive time in quality is unlikely to succeed. While fast trial and error is a prerequisite for success, if too much time is spent on operating testing to improve quality, there will be no time for trial and error. That means losing the very chance of success.
In a startup, every product before the PMF is only a prototype. The quality required of a prototype is that the concept is visible. It is like the background scribble of a play. In the performing arts, such as opera, a small piece of background is used to evoke the setting of a story to make it more realistic. The audience is made to feel as if they are in a dark forest, an old castle, a witch's hut, etc. If the background is just pitch black or a white curtain throughout the program, the audience may find it difficult to enjoy the play. Immersing themselves in the world is impossible because they can not imagine the scene concretely. Startups have some aspects like an opera and have to make investors or innovators love your concept and product.
The product as a prototype must make the concept understandable to a small group of supporters. As long as it is not against the law, all other factors should be concerned later. Software testing is powerless at this point. Trial and error are made by considering product concepts and writing codes, not by checking whether the code works "properly" or not (How to define "properly" correctly?).
In addition, test automation is the worst option for unmatured startups. Creating automated UI tests for a product that may change tomorrow is useless. You may have heard about the classification from Elizabeth Hendrickson that testing has two aspects, checking and exploring. Automated testing belongs to checking. Using automated testing to check quality instead of manual software testing is not feasible. Automated testing has its strength in the checking part, which only checks what is written in test scripts.
Expert Testers Providing Value in Startups
Following Elizabeth Hendrickson's argument, as shown above, testing at this point may work if it is "exploring". By having exploratory testing carried out by testers who have a good understanding of the concept the product aims to achieve before letting customers operate product features, the chances of customers finding defects can be reduced. Exploratory testing is a well-known method of testing dedicated to finding defects. It would be useful if expert testers operate exploratory testing in a limited time-box, like 30 mins. But skillful testers are so rare that it might be better to forget software testing until your company grows.
"We are a startup" is not an indulgence that customers can encounter faults without problems. If imperfections are quickly found in a very limited product, investors will judge that the startup cannot succeed. Quality cannot be a priority until PMF, but if the quality is too poor, investors will stop supporting the startup, and you have to go bankrupt sooner or later. Running startups is so challenging.
Though I would like to avoid recommending it, in case you want to hire testers at this stage, they must be high-level members who can perform tasks other than software testing. Testers who just operate testing are not for the early days of your company. They need to be familiar with the product development process and be able to work together to build the product while supporting the product manager from a quality perspective. In some cases, they may need to be able to write programs to get out of a tight spot. Someone who just designs and executes tests is not needed now. If you are thinking of outsourcing the software testing, I would suggest you consider it again after the product has achieved the PMF. In any case, product testing needs to be flexible at this time.
Overall, a standard software testing strategy would not work enough in the early stage of startups. Software testing in that stage should be flexible more than effective because every product in this company phase is a prototype to show supporters the concept of your business. Supporters may be disappointed when they find defects and even stop believing your business vision and plan. To prevent them from finding bugs, it is lucky that you can ask testers to run exploratory testing, which requires ample experience and testing skills. Consider test automation after confirming your concept works in the market!