Often, as testers, we question where we can make improvements, bring fresh ideas, and add value in our organizations. Based on past experience, I have seen huge benefits from running a Bug Bash. In this post, I want to cover the topic of the Bug Bash and why I believe it is so effective.
What is a Bug Bash?
In simple terms, a Bug Bash is a set period of time where a range of internal staff test the product to find bugs, use a new piece of functionality, and provide feedback.
All developers, testers, product managers, designers, sales representatives, customer support staff, and anyone else willing to spare time put aside their regular day-to-day duties and focus on the product to gain a much greater understanding of it.
Why run a Bug Bash?
Are we building the right product
From the V-Model, we take two simple principles: Are we building the product right? and Are we building the right product?
•Are we building the product right? Bug Bashes help us find the most important bugs quickly or at least before we release.
•Are we building the right product? More importantly, Bug Bashes help us validate that we are creating a product that delivers business value. By inviting a diverse range of internal staff members, such as sales and customer support, we receive early feedback to determine whether we are on the right path. Bug Bashes in this context should complement other strategies such as Behavior-Driven Development (BDD).
Efficient
It is much more efficient to have multiple people from different backgrounds testing software than relying solely on a tester, developers and testers pairing, or even a team mobbing. Ultimately, this leads to finding critical issues earlier—in other words, identifying problems that people care about faster.
Diversity
A Bug Bash ensures diversity is incorporated into your testing in terms of both cultural and specialist diversity. It introduces cross-functional specialist skills by including marketing, sales, and support perspectives.
I currently work in a cross-functional team of six members, representing four nationalities: Irish, Scottish, Polish, and Spanish. When we run a Bug Bash, that extends to other nationalities such as English, American, and Brazilian.
When developing software for a global market, you need that level of diversity in your testing. A more diverse group will help identify issues, such as user experience problems, that—if resolved—could be the difference between a successful or unsuccessful feature.
Earlier than other group testing approaches
Bug Bashes are an early group testing strategy, conducted before other group testing approaches such as Beta testing, Bug Bounties, and Crowd-testing services. While the focus of Bug Bashes is prior to release, the strategies listed above are typically post-release.
When do you run a Bug Bash?
There are Generally two distinct times when you would want to schedule a Bug Bash.
Prior to release
-
A Bug Bash could take place about a week before the release date. In my experience, it should be scheduled late enough that the product has reached a reasonable level of quality (i.e., no critical or major defects) but early enough that changes can still be made.
•The implementation of the code should be complete, and the team should be satisfied with the software’s quality.
•There may still be known open issues, but these should be deemed acceptable for release.
•The primary purpose of this Bug Bash is to conduct a final round of testing, with the expectation that no major issues should be uncovered.
It is worth noting that mock-ups and demos of the product can be shared outside the team. However, in my opinion, the software should be of reasonable quality before inviting others outside the team. I believe that Bug Bashes should still be considered part of a shift-left strategy.
Tight Testing timelines
-
A Bug Bash might also be scheduled if, after initial testing, a significant number of issues have been found and there is limited time before code completion. If a significant amount of regression testing needs to be completed within a short timeframe, a Bug Bash can help identify remaining issues as quickly as possible.
This approach is similar to Exploratory Testing when testing timelines are tight, and exploratory test techniques may complement the Bug Bash.
Summary
Bug Bashes offer many benefits, such as diversity in testing, early group testing, quality improvements, and validation that we are delivering business value. They also complement other test approaches such as Exploratory Testing and Behavior-Driven Development (BDD).
For the time and effort spent on organizing a Bug Bash, few other approaches are as efficient and effective.
Why don’t you give it a bash?
If you enjoyed this blog, check out the next Blog – Guidelines running a Bug Bash
This is a personal blog. The opinions expressed here represent my own and not those of my current or previous employers.
This is a great idea. How is it working out at your organization? How long have you been doing bug bashes at your company?