In this chapter, we will learn about defect/bug in software testing and why it occurs, basic terminology of a defect, and bug tracking tool.
What is a bug in software testing?
The Bug is the informal name of defects, which means that software or application is not working as per the requirement.
In software testing, a software bug can also be issue, error, fault, or failure. The bug occurred when developers made any mistake or error while developing the product.
While testing the application or executing the test cases, the test engineer may not get the expected result as per the requirement. And the bug had various names in different companies such as error, issues, problem, fault, and mistake, etc.
Basic terminology of defect
Let see the different terminology of defect:
- Defect
- Bug
- Error
- Issue
- Mistakev
- Failurev
Terms |
Description |
Raised by |
Defect |
When the application
is not working as per the requirement. |
Test Engineer |
Bug |
Informal name of
defect |
Test Engineer |
Error |
Problem in code
leads to the errors. |
Developer,
Automation Test Engineer |
Issue |
When the application
is not meeting the business requirement. |
Customer |
Mistake |
Problem in the
document is known as a mistake. |
-- |
Failure |
Lots of defect leads
to failure of the software. |
-- |
Why defect/bug occur?
In software testing, the bug can occur for the following
reasons:
- Wrong
coding
- Missing
coding
- Extra
coding
Wrong coding
Wrong coding means improper implementation.
For example: Suppose if we take the Gmail application
where we click on the "Inbox" link, and it navigates to the "Draft" page, this is happening because of the
wrong coding which is done by the developer, that's why it is a bug.
Missing coding
Here, missing coding means that the developer may not have
developed the code only for that particular feature.
For example: if we take the above example and open
the inbox link, we see that it is not there only, which means the feature is
not developed only.
Extra coding
Here, extra coding means that the developers develop the extra
features, which are not required according to the client's requirements.
For example:
Suppose we have one application form wherein the Name field, the First name, and Last name textbox are needed to develop according
to the client's requirement.
If we develop an extra feature that is not needed in the requirement, it leads to unnecessary extra effort. And it might also happen that adding up the extra feature affects the other elements too.
Bug tracking tool
We have various types of bug tracking tools available in software testing that helps us to track the bug, which is related to the software or the application.
Some of the most commonly used bug tracking tools are as follows:
- Jira
- Bugzilla
- Redmine
- Mantis
- Backlog
Jira
Jira is one of the most important bug tracking tools. Jira is an open-source tool that is used for bug tracking, project management, and issue tracking in manual testing.
Jira includes different features like reporting, recording, and workflow. In Jira, we can track all kinds of bugs and issues, which are related to the software and generated by the test engineer.
To get the complete details about Jira tool, refer to the below link:
https://www.javatpoint.com/jira-tutorial
Bugzilla
Bugzilla is another important bug tracking tool, which is most widely used by many organizations to track the bugs.
Bugzilla is an open-source tool, which is used to help the customer, and the client to maintain the track of the bugs.
It is also used as a test management tool because, in this, we can easily link other test case management tools such as ALM, quality Centre, etc.
Bugzilla supports various operating systems such as Windows, Linux, and Mac.
Bugzilla has some features which help us to report the bug easily:
- A bug can be list in multiple formats
- Email notification controlled by user preferences.
- Advanced searching capabilities
- Excellent security
- Time tracking
Redmine
It is an open-source tool which is used to track the issues and web-based project management tool. Redmine tool is written in Ruby programing language and also compatible with multiple databases like MySQL, Microsoft SQL, and SQLite.
While using the Redmine tool, users can also manage the various project and related subprojects.
Some of the common characteristics of Redmine tools are as follows:
- Flexible role-based access control
- Time tracking functionality
- A flexible issue tracking system
- Feeds and email notification
- Multiple languages support (Albanian, Arabic, Dutch, English, Danish and so on)
MantisBT
MantisBT stands for Mantis Bug Tracker. It is a web-based bug tracking system, and it is also an open-source tool.
MantisBT is used to follow the software defects. It is executed in the PHP programing language.
Some of the common features of MantisBT are as follows:
- Full-text search
- Audit trails of changes made to issues
- Revision control system integration
- Revision control of text fields and notes
- Notifications
- Plug-ins
- Graphing of relationships between issues
Backlog
The backlog is widely used to manage the IT projects and track the bugs. It is mainly built for the development team for reporting the bugs with the complete details of the issues, comments. Updates and change of status. It is a project management software.
Features of backlog tool are as follows:
- Gantt and burn down charts
- It supports Git and SVN repositories
- IP access control
- Support Native iOS and Android apps
0 Comments