The Joomla! Bug Squad (JBS) is a team within the development work group. Their job is to identify and fix bugs in Joomla. This includes the following:
The Bug Squad is also supporting with testing and quality assurance when a new major or minor version is developed. Generally speaking the bug-squad is in the lead when a version switches from beta-stage to the stable-stage within the development cycle of Joomla!
The Bug Squad was created in December 2007. As of May 2010, JBS has been organised into the following teams:
These teams are not rigid, and JBS members can participate in whatever activities they wish. The purpose of the teams is to make it easier for JBS members to focus their efforts and learn the skills required to successfully contribute to the project.
This team has the very important and difficult job of filtering all of the forum posts and bug reports and sorting out which ones are real bugs that are ready to be worked on. From the standpoint of the tracker, their job is to move issues from Open status to Confirmed status. Of course, many issues will also be put into other status codes, including Information Required, Needs Review, Duplicate, Not a Bug, and so on.
Before an issue is marked Confirmed, it needs to be reproduced and documented so that others can reproduce the problem.
The coding team works with Confirmed issues and creates patches to correct these issues. When a patch is completed, and when a test plan has been added that tells the testers how to test the patch, the issue is changed to Pending status.
This team tests Pending issues and, when tests are successful, documents this and moves the issue to Ready to Commit status. At this point, one of the JBS coordinators will commit the patch to the SVN.
Automated testing is a key technology that we will incorporate into the workings of JBS. At the present, this is a somewhat specialized skill, so we will start by developing a separate team of people who are familiar with this and can help write automated tests and train other JBS members on automated testing. Our aim is to eventually make automated testing a routine part of fixing issues.
This team is responsible for coding and documenting the upgrade process for users migrating sites or extensions from one version to the next (for example, from version 1.5 to 1.6). They will be responsible for creating and fixing issues in this area of the code.