MantisBT - Open Source Bug Tracking Tool

Franco Martinig, Martinig & Associates, http://www.martinig.ch/

MantisBT (Mantis Bug Tracker) is an open source web-based bug tracking tool that has been available for more than 15 years and that offers an interface in 50 languages. The software provides ways to customize the user roles and the bug process workflow. MantisBT has a plugin system that allows extension of MantisBT through both officially maintained and third party plugins.

Website: https://www.mantisbt.org/, https://github.com/mantisbt/mantisbt

Version tested: MantisBT 2.22.1 in October-November 2019 on a wamp platform.

System requirements:



MySQL 5.5.35+, PostgreSQL 9.2+, or other supported database like MariaDB

PHP 5.5.9+

a web server (e.g. Apache or IIS)

Free open source software with GNU General Public License (GPL).

figure 1 view issue

(click on figure to enlarge)

Documentation

MantisBT has an extensive documentation for both administrators and developers that is available both online and as PDF files. The PDF document “Administrator Guide” has more than 100 pages.

Installation

To install MantisBT, you simply point your browser to the installation script that performs pre- and post-installation checks. You can then login with the default administrator user name and password. The first thing that MantisBT will ask is to modify the current default password.

If you don't want to go through the installation process, a paid hosted version of MantisBT is also available. More details are available on the website.

Configuration

* Managing Users

The configuration panel allows you to configure project and users. Users can have different roles that define the access level of the user: viewer, reporter, updater, developer, manager and administrator. Each feature has several configuration options associated with it and identifies the required access level to do certain actions. For example, viewing an issue, reporting an issue, updating an issue, adding a note, etc.

Each user can manage his own configuration for items like the default project, the interface language or the time zone is concerned. Administrators are able to impersonate users in order to reproduce an issue reported by a user, test their access making sure they can access the expected projects/issues/fields.

* Managing the Issue Life-cycle and Workflow

An important part of issue tracking is to classify issues according to their status. MantisBT provides the ability to customize the list of statuses. MantisBT assumes that an issue can be in one of three stages: opened, resolved and closed. Hence, the customized statuses list will be mapped to these three stages. MantisBT comes out of the box with the following statuses: new, feedback, acknowledged, confirmed, assigned, resolved and closed.

MantisBT workflow dictates how issues move from one status to another and who is authorized to trigger such transitions. MantisBT provides the ability for teams to define their own custom workflow which works on top of their custom status.

* Customization

MantisBT offer extensive options to adapt the software to your context as more than 10 pages of the user manual are dedicated to the different customization options. As different teams typically like to capture different information as users report issues, MantisBT provides the ability for managers and administrators to define custom fields as way to extend MantisBT to deal with information that is specific to their teams or their projects. The aim is for this to keep MantisBT native fields to a minimum. All strings used in MantisBT, including those defined in plugins, can be customized or translated differently if you want to adapt the tool to your organization standards or your local language.

* Plugins

The MantisBT plugin system allows extension through both officially maintained and third-party plugins. The plugins functionalities range from Gantt chart and Scrum board display to Slack, Mattermost and Telegram integration for team communication.

Figure 2 dashboard

(click on figure to enlarge)

Using MantisBT

Each user login into MantisBT starts with a dashboard that shows all the issues where he is involved.

The screen used to create an issue contains plenty of information about it: project, category, how to reproduce it, severity, priority, platform, assign to, summary, description, additional information and tags. You can also attach files like screenshots to the issue. Each issue has its issue history which allows to see all actions performed on it. Editing issue is simple and you can also clone them if you need.

The flow and monitoring of bugs in MantisBT is also email-driven. A user can not only notify and remind other users about a bug, but you can also invite other people (through MantisBT) to look at or monitor these bugs. This feature is useful if a project manager needs to get feedback from testers / requirements team about a certain bug. It avoids needing this person to do this manually outside MantisBT. It also records the history of such reminders.

To track the life of a bug, MantisBT provides a “bug history” feature where all modifications that are made to bugs are recorded. These include everything starting from its creation until the issue is closed. For each change, the MantisBT will record the time stamp, user who made the change, field that changed, old value, and new value.

Conclusion

As an open source bug tracking software, MantisBT is a good tool that has a long track record of evolution since 2002. Its very good documentation and a strong user community allows to easily implement it and find answers to questions on active user forums, also in French, German and Russian. The customization options and the open architecture with a plugin system provides ways to adapt the tools to your requirements and to enhance functionalities if needed.

Related Bug Tracking, Software Testing and Quality Assurance Resources

Click here to view the complete list of tools reviews

This article was originally published in November 2019