MantisBT open source free popular bug tracking system tutorial:
Testing is an integral part of any software development life cycle. The software bug is an error in a software application which causes software to produce incorrect results. Therefore, causing deviation in the expected, and actual outcome.
A bug tracking software is a software application used to maintain records of software bugs reported during the software development life cycle.
What You Will Learn:
- Mantis Bug Tracking Tool Tutorial
- Why we need a Bug Tracking System?
- Introduction to Mantis Bug Tracker
- Salient features of MantisBT
- Download and Install WampServer
- User Interface of Mantis BugTracker
- How to report bugs in Mantis?
- How to create a project in Mantis Bug Tracker?
- How to create a user in MantisBT?
- How to configure Email in Mantis?
- How to use Filters in MantisBT?
- Recommended Reading
Mantis Bug Tracking Tool Tutorial
Why we need a Bug Tracking System?
Recommend read => Most Popular Bug Tracking Systems
To manage the issues logged during software development life cycle proper managing system is required. A bug tracking facilitates in managing bugs so that proper track record of the bugs could be maintained, and be accessible to the team members working towards the development of the project.
Basically, the Bug Tracker is a software application which is used to track record of the bugs produced during the development of a software.
Also read => Benefits of Defect Tracking System
Introduction to Mantis Bug Tracker
Mantis Bug Tracker is one such tool that can serve the purpose of Bug tracking. Mantis BugTracker or MantisBT got started developed by Kenzaburo Ito in the year 2000. Jeroen Latour, Julian Fitzell, and Victor Boctor joined in the year 2002 and it became a team project.
The version 1.0.0 of Mantis Software was released in the year 2006. Since then, new updates have been launched. In July 2012, the MantisBT organization on GitHub became the official repository for the Project’s source code. Currently, MantisBT 2.5.1 is the latest stable version available in the market.
Mantis software is developed in PHP language, and supports databases like MySQL, MS SQL, PostgreSQL, and numerous browsers, but not limited to Google Chrome, Mozilla Firefox, Internet Explorer, Safari, Opera. The UI of Mantis tool is built using HTML and CSS.
This is released under GNU General Public License (GPL).
Salient features of MantisBT
- Mantis tool is available as open source in the marketplace. Mantis supports numerous browsers and supports almost all platforms like Windows, Ubuntu, Linux etc.
- Mantis supports Multiple projects per instance with per project user access thus maintaining proper isolation between projects, and the team working on them. It also supports sub-projects and categories
- Reported bugs can be exported to CSV, xlsx
- Option to integrate with third party plugins so as to track time required for a specific project
- Email Notification triggers automatically on any update in a reported bug
- RSS feed report
- Mobile access is available through Mantis Touch
- Advanced search tools
- Document management
- Revision control integration
- Time tracking
- Customizable pages
- Optional wiki and chat integration
Following points have been covered in this article:
- Pre-installation steps for Mantis
- How to install MantisBT in Windows?
- How to create a project in MantisBT?
- How to report bugs in MantisBT?
- How to create a user in MantisBT?
- How to configure Emails in MantisBT?
- How to use Filters in MantisBT?
Following are the software packages which we require to install MantisBT:
- Operating System: MantisBT supports multiple OS platforms like Windows, MacOS, OS/2, Linux, Solaris
- Web server (Apache): MantisBT supports Apache Web server and Microsoft IIS. If you are using any other Web server, then PHP must be configured with it
- Database: MantisBT stores its data in a database. Recommended database for MantisBT is MySql, however different RDBMS are supported by MantisBT are like MySQL, PostgreSQL, Microsoft SQL Server and Oracle
- Browser: MantisBT supports most recent browsers like Mozilla Firefox, Google Chrome, Safari etc.
To install PHP, MySQL, Web server altogether on Windows we can use WampServer.
Download and Install WampServer
Follow steps to download and install WampServer in windows:
- Navigate to WampServer link
- Scroll down to Downloads section on the web page
- Select the WampServer link based on your system OS. A pop-up will appear, once clicked on any of the options. Click on “download directly”
- Once clicked on the “download directly”, you will be redirected to this website. Downloading of WampServer will start automatically and if it is not started automatically then click on the Download button
- This will start downloading of MantisBT. The size of the file would be around 197 Mb and the file name would be like ‘wampserver3.0.6_x86_apache2.4.23_mysql5.7.14_php5.6.25-7.0.10.exe’.
- Once downloaded, double-click on the downloaded file.
Follow the wizard and install WampServer through following steps:
- After double-click, it might give security warning to some users as per their operating system used, which is just for security purpose of the window. Click on the Run tab
- Select the Language
- Click on the ‘I accept the agreement’ and press next tab
- Press Next Tab
- Provide the destination location where you want to install the wampserver and then press next (By Default it is c:\wamp)
- Click next for the default setting
- Click Install tab to install the WampServer
- After clicking Install, it will start installing
- Choose your browser to be used for this WampServer, by default it will use Microsoft Internet Explorer. You can choose any web browser installed on your machine
- Choose any text editor installed on your machine, be default it will use Notepad
- Click allow access
- Click Next tab
- Finally, click on the Finish tab to complete the installation. Now you have Apache, PHP, and MySQL altogether into your machine
- Go to Start Menu, start the wampserver by clicking on the icon (a wamp icon will appear in the system tray). The color of the icon at first will be red then orange and finally, it will be green which means all the services like Apache and MySQL are running.
- If the wampserver is not installed correctly, you may find difficulty in installing Mantis. In order to ensure that you are good to go ahead, check the points mentioned below.
Check if wampserver installed:
How to check if wampserver installed successfully and all its services are working fine or not.
#1) The color of the icon of the wampserver at system tray should be green. Green color means all the services are running fine. If the color of the icon is orange that means, there is something wrong and services are not running
#2) To Check Apache Service Running or Not: Right click on the wampserver icon at system tray then go to tools and then click on the Test Port 80, as this is the port which is used by Apache server
After clicking on Test Port 80, a dos black screen will get open and it will give the result like this below black screen.
#3) To Check MySQL Service Running or Not: Right click on the wampserver icon at system tray then go to tools then click on the Test Port 3306, as this is the port which is used by MySQL
After clicking on that a DOS screen will get open and it will give the result like this below back screen.
- Once WampServer is installed we can proceed towards installation process of MantisBT.
How to install MantisBT in Windows?
Download and Install Mantis Bug Tracker:
Follow steps to download and install MantisBT
- Navigate to Mantis download link
- Click on the Download button
- Once clicked on the download button, you will be redirected to this website. Click on Download button. This will start downloading of MantisBT. Its size is 16.5 MB and file name would be like ‘mantisbt-2.5.1.zip’
- Once downloaded, extract the zip file and place the folder at following location: C:\wamp\www. This is default location where you installed the wampserver
Note: I have installed WampServer in C drive. Use the path where WampServer is installed.
- Navigate to http://localhost:(port)/, for example, if you are using port number 80 then use http://localhost:80/
Note: By default port number 80 is selected, if that is occupied by some other process, you will need to change the port number. The Process to change the port number is explained later in this article.
- Right click on wamp icon present on the system tray, go to wamp setting by right clicking on the wamp icon in the system tray and select following items from the list
- On the opened web page, click on the Mantis folder under “Your Projects” located at the bottom of the screen as shown in the image
- After clicking on the Mantis folder under “Your Projects” below screen will appear
- Type of Database is MySQL by default, Here we can also select Microsoft SQL, Postgre SQL, Oracle if you have installed them instead of MySQL
- Click on Install/Upgrade Database button, present at the bottom of the screen
- On the next page, check for the following message at the bottom of the screen “MantisBT was installed successfully“. Ignore the error messages
- Click on the create a link as shown in the image or you can directly Navigate to the URL http://localhost:(port)/mantisbt-2.4.1/mantisbt-2.4.1/login_page.php to begin.
- By default, user name is “administrator” and password is “root”
- After login below screen will appear
During the installation process, you may find some errors. In this article, some of the common errors and their resolution have been listed out.
#1) VCRuntimeDll.140 error: When the following message is displayed during installation of wamp server: “The program can’t start because VCRUNTIME140.dll is missing from your computer. Try reinstalling the program to fix the problem.” then it implies “Visual C++ Redistributable Packages” are missing from your computer
Follow steps to resolve the error:
- Navigate to https://www.microsoft.com/en-in/
- In the search bar, search for “VCRedist“
- Click on “Download Microsoft Visual C++ 2010 Redistributable Package” link
- On the next screen, select the language, and click on Download button
- This will start the downloading of Visual C++ Redistributable Packages
- Once downloaded, double-click on the downloaded file. This will launch an installation wizard
- Once Visual C++ Redistributable Packages have been installed, re-install the WampServer
#2) Err_Connection_Refused: If the following page is displayed instead of the welcome page of WampServer, then use a different port number. As the current port number is being occupied by some other services
Follow steps to resolve the error:
- Right click on the wamp icon present in the system tray
- Go to Tools | Use a port other than (current port number)
- Provide any unused port number, and click on Ok
User Interface of Mantis BugTracker
Once a user is logged in and set up the user profile, this is the first page which is displayed to the user.
Let us become familiar with the user interface, and understand the different features provided on the first screen of the Mantis Bug Tracker.
This page is divided into different sections. On the left side, there is Navigational menu having links to different pages.
1) Navigational Menu: This is the navigational menu having various links like Report issue, View issue
2) Assigned to me: In this section, all the issues which are assigned to the user who is logged in currently are displayed under this section.As you can have an idea the timing at which the bug was reported is displayed under bug summary, and a unique number is automatically assigned to each reported bug
3) Unassigned: In this section, all the issues which are pending to get assigned to the concerned person are displayed
4) Reported by me: All the issues reported by the user are displayed under this section
5) Recently Modified (30 days): All the issues, which have been modified during 30 days’ timeline is displayed under this section
6) Header: In header various links like Report issue, Invite users are provided. The user can directly click on Report Issue button and then can jump to report issues page. You can change the project for which you want to view issues or report an issue.
In the rightmost is the name of the logged in user is displayed. Click on which following options are displayed. The user can click on logout to exit the session.
7) Timeline: In this section, all the recent updates regarding the project are displayed. Whether the issue has been newly reported, closed or any updates made in an existing bug all activities of regarding the bug get logged in and displayed under this section.
How to report bugs in Mantis?
Recommended read => How to Write A Good Bug Report
The First screen displayed to the user is the login page where the user is prompted to enter the login credentials
- Enter the username and password
- Click on Login button
- There is also an option on the login window to save the login in the browser
- To report a bug click on Report Issue present at the top or from the Navigation menu
- Click on the project, and select the project from the dropdown for which the bug is to be reported
- Click on report issue
- Following page is displayed
- Select the category
- Select reproducibility of the bug.
Reproducibility: It defines whether the bug reported is reproducible or not. The Mantis Bug Tracker provides default options under this category.
Following points are displayed in the drop down.
- Have not tried: Choose this option if you had not tried to reproduce the bug
- Always: Choose this option if the bug can be reproduced at every iteration
- Random: Choose this option if error occurring randomly
- Unable to reproduce: Choose this option if the scenario used had produced the unexpected result is not producing the bug anymore
- Sometimes: Choose this option if the bug occurs few times during iteration
- Select the severity of the bug.
The following options are available under this category
- Select the option which best describes your bug.
- Select the priority of the bug
The following options are available under this category
- Select the appropriate option
- Select Profile: (Platform, OS, OS Version) use this to add information like platform used operating system used and its version or flavor
- Next field is Assign to. In this category, you can select the name of the person to whom the bug is to be assigned
- In the summary, you can provide the short description of the bug
For example, in an e-commerce website, the products are not getting added to the cart. You can provide the short description for this as Shopping Cart. Products are not getting added to the cart.
- In the description, explain the bug, testing environment in which test is being carried out include expected, and actual results
- In steps to reproduce section write the steps involved to produce the bug which could be used again so as to reproduce at developer’s end
- If you want to attach any file, image referring the bug you can attach it in file attachments section
- Once all the options are filled. Click on Submit issue
- A success message is displayed to the user, and the page is redirected to the view page
Note that, a unique ID is assigned to the issue reported. This ID can be used to search the issue from the search bar.
If you want to view the reported issue, click on the ID as shown in the image. The reported issue will be displayed on the screen.
Thus, we have reported a bug in Mantis Bug tracker. Next, we will learn to create a project in MantisBT.
How to create a project in Mantis Bug Tracker?
Next, we will see how to create projects in mantis bug tracker. Mantis supports multiple projects in a single instance.
Follow steps to create a new project:
Note: Mantis provides different rights to the logged in user. So rights to Create the project are given to the administrator specific user only. So login with the user and following navigational menu is displayed.
- Click on Manage
- Go to manage project tab as shown in the image
- Click on the Create new project
- A new window will open with the following field
- Project name: Provide the name of the project
- Status: You can specify the current status of the project
By default following options are available:
- Development: Choose this option if the project is under development stage
- Release: Choose this option if the project is under release stage
- Stable: Choose this option if testing is carried out on the stable version of the project
- Obsolete: If the version of the project is out of date or not used currently than this option can be chosen
- View status: Select whether the project is private or public. As private projects, and progress in it is visible to only those users to whom this project is assigned
- Description: Under Description text box you can provide the description of the project
- And finally, click on Add Project button
A success message is displayed, and thus project gets added to the Mantis for bug reporting. Next, we will learn to create a user in MantisBT.
How to create a user in MantisBT?
We have seen how to create a project, and also have learned to report an issue in Mantis Bug Tracker. Basically, Rights to create a new user or edit an existing user are given to the person having administrator rights.
Create new account page facilitates administrator to manage users in the system. So login with the administrator. Once logged in with administrator following options as shown in the image will be displayed in the navigation menu.
- Click on Manage
- Switch to manage user tab
- By default manage user tab is pre-selected as this is being the first tab of the multiple tabs available
- Click on create a new account
- Once clicked on this button a new window will open
- Enter the user
Note: Username used for the new user must be unique, and shouldn’t be used previously.
- Provide the real name of the new user.
Note: Real name used for the new user must be unique, and shouldn’t be used previously, the i.e real name of the new user should not coincide with the real name of an existing user.
- Provide email of the user.
- In the access level drop-down, there are different options are available by default.
- Choose the appropriate option.
- Click on Create User
A new user thus gets created in the system.
How to configure Email in Mantis?
During software development, one of the biggest challenges is to keep the team notified about any changes, or bugs reported. MantisBT triggers an email notification to the concerned person if there is any new bug reported, or changes made in an existing bug.
Follow steps to configure email notification in MantisBT
- Navigate to path: D:\wamp\www\mantisbt-2.4.1\mantisbt-2.4.1\config
- Open config_inc.php in notepad, and add the following code:
$g_phpMailer_method = PHPMAILER_METHOD_SMTP; $g_smtp_host = ‘smtp.gmail.com'; $g_smtp_port = ‘465'; $g_smtp_connection_mode = ‘ssl'; $g_smtp_username = ‘firstname.lastname@example.org'; $g_smtp_password = ‘xxxx'; $g_administrator_email = ‘email@example.com'; $g_webmaster_email = ‘firstname.lastname@example.org'; $g_from_email = ‘email@example.com'; $g_return_path_email = ‘firstname.lastname@example.org'; $g_default_timezone = ‘UTC'; $g_log_level = LOG_EMAIL | LOG_EMAIL_RECIPIENT; $g_log_destination = ‘file:D:\mantisbt.log';
- Save the file
- Login to MantisBT using administrator credentials
- Click on Invite users
- Create a user
An email will get triggered to the concerned person.
How to use Filters in MantisBT?
When the number of bugs reported in project increases, it becomes very hectic to search for a specific group of the issue.
For example, In a project developer wants to resolve all the bugs which are assigned to him under high priority. In that case, filters can be applied to group the issues as per the requirement.
Let us understand how to apply filters to search or group the issues.
- Click on View Issue
- On the page, various
- Click on project drop down, to search issues based on the particular project
- Click on any field as per your requirement
- Click on the apply filter. All the issues meeting the requirement will get listed in the grid
Save the Filter:
If you want to save the current filter, Click on Save filter button.
- In the next screen, Enter Filter Name
- Select the Project check box, and click on Save Current Filter Button
- A success message will be displayed confirming the action “Filter saved successfully”
On the screen following options are displayed:
- Manage Filter: This option can be used to delete an existing saved filter
- Permalink: Permalink is used to create a link for a particular filter. That link can be shared with other team members, for that particular filter
Bug tracking software helps to manage the bug effectively, and efficiently. Ultimately, reducing time, and efforts in managing bug history. With proper management of bugs, we can improve the quality of the work process and can avoid any loopholes in the process for testing, and development.
With proper tracking, one can expect proper utilization of the resource (employee), and to deliver the maximum output from them. Thus, expecting a good Return on Investment.
Please share your comments or questions with us below.