Redefining Agile Testing: Even Your Mom Can Be a Tester in Your Team
”Move fast, break things”, is a mantra that many early startups follow. This makes sense, as time to market might be the only competitive edge a startup has over competitors. However, this often leads to an accumulation of testing debt, impacting the product’s stability.
To prevent incurring excessive technical debt, many startups adopt agile testing, a methodology where everyone on the team is involved in testing, leading to faster product deliveries.
Despite involving every team member in the testing process, however, some startups may still find it challenging to build quickly. This is especially true for startups that operate with a very lean team, I’m talking a team of 3 - 5 members.
So, in this article, I’ll discuss how we build fast at my startup, Edubaloo and still maintain some degree of stability by extending my agile testing team to include my mom.
Yes, you read that right, my mom.
But before we consider that, let’s find out if you should even invest in testing.
Should you even be testing?
Every startup is different and the decision to allocate resources to testing can depend on various circumstances.
For instance, If your startup is developing a product where reliability is crucial, like in the health or finance sectors, thorough testing is not a negotiation. The cost of an error could be severe!
On the other hand, if you're working in a fast-paced industry where time to market provides a competitive edge, testing might not be your primary concern. In such situations, it would be more beneficial to prioritize quick iterations and frequent releases.
If you fall more in the latter, I’d still recommend that you maintain some level of testing, to help catch significant issues and ensure customer satisfaction. A customer may tolerate only so many bugs before they opt for another service.
So, how can you test your product to ensure stability, quickly build and ship, all while managing limited resources?
Well, That's where your mom comes in.
If your mom can't test, ask your sister.
No, I'm not suggesting you create a company email for your mom. You can't deny though that an email address like firstname.lastname@example.org would totally bang!
When I mention having your mom test, I'm referring to the idea of delegating some testing responsibilities to anyone you have a personal relationship with. This could be any family member, friend, or partner who is interested in the success of your startup.
That’s one of the strategies I’ve used at Edubaloo to save time and cost.
Yes, they may not have an in-depth technical understanding of your product, but they can conduct non-technical testing. This could involve exploratory tests, essentially simulating the actions of real users.
By involving your loved ones, you receive diverse and fresh perspectives on your product, allowing you to allocate resources elsewhere while maintaining your iterative momentum.
But how can you effectively integrate your family into your testing team without hindering team productivity? It’s not like you can send them an 8-hour course on software testing.
Let's discuss that in the following section.
Steps to Incorporate Non-Professionals in Testing
Utilize casual, light training sessions. You will find success in including non-technical friends to help you with your testing when you employ light-hearted training sessions on testing your product.
I’ve found keeping the conversation a bit casual to be quite effective, while conveying the significance of their contribution to the success of the product.
People tend to be more motivated when they believe their efforts have meaning.
This approach ensures that your non-professional testers are fairly trained and also motivated and engaged, increasing the likelihood of a productive outcome.
Establish Clear Communication Channels. You need a seamless way to discuss with your non-professional testers. Personally, I recommend Slack. It allows for quick responses, easy file sharing, and integration with other tools.
And If you're not comfortable adding them to the company's main Slack account, you can create a new workspace for them. A free account of course! We’re conserving our resources here.
With a clear communication channel, you're sure to keep all your conversations organized, ensuring efficient and effective coordination among your testing team.
Create a Simple Submission Process. You need a simple way for your family of testers to submit their identified bugs.
I recommend Google Forms. It's simple for most people to understand and use, easy to set up, and allows you to export data into a spreadsheet for review.
This ensures that every bug discovered is documented efficiently and is readily available for the team to address.
Set Realistic Expectations. Remember, your family testers are probably not as tech-savvy as you are, so don't expect perfect results from them. They’re only there to provide some level of stability and improved user experience for your product.
Establishing clear objectives that align with their abilities is crucial for fostering a productive collaboration.
Reward them for their effort. Everybody likes being appreciated, so don't forget to praise and reward your testers when they help you out.
It can be as simple as buying them a cup of coffee or treating them to a meal.
These small tokens of appreciation will not only make them feel valued but also motivate them to continue providing support.
By incorporating these steps, you can benefit from a broader testing team, allowing you to maintain stability while keeping up development speed. However, expect some challenges, let's explore some of them.
Challenges and Solutions
Clear Guidelines: While it may initially require some time to create clear guidelines for family and friends to conduct tests, using Language Learning Models like ChatGPT can significantly simplify this task. With a simple prompt and review, your guideline can be ready in just a few minutes.
Constructive Feedback: Providing feedback to people you have personal relationships with can be tricky. Regardless of the situation, however, always respond with kindness and respect. Emphasize their strengths and achievements while gently guiding them on areas for improvement. This approach ensures everyone feels appreciated and stays motivated.
Patience & Support: There is a high likelihood of casualness from your testers due to the personal relationships involved. They may not take the testing as seriously as a professional might, as there's less at stake for them.
This often requires an extra measure of patience and support on your part, reminding them of their tasks, acknowledging that you understand their time is precious, and expressing your appreciation for their help.
This approach can help ensure they remain engaged and take their testing responsibilities seriously.
Maintaining Focus: Overfamiliarity can cause shifts in conversations from professional to personal, derailing focus from testing, and wasting time and resources.
To address this, consider setting short, focused meetings, lasting no longer than 5-10 minutes. These meetings should strictly adhere to discussing work-related topics. This approach ensures that the conversation stays on track, Keeping testing processes professional and efficient.