Bugtracking Tools
Bugtracking Tools
A software bug occurs when an application or program doesn’t work the way it is designed to
function. Most errors are faults or mistakes made by system architects, designers or
developers.
Testing teams use bug tracking to monitor and report on errors that occur as an application is
developed and tested.
A bug tracking tool can help record, report, assign and track the bugs in a software
development project.
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.
There are many defect tracking tools available. we can put this in another way “Better is the
bug tracking tool, better the quality of the product.”
https://www.javatpoint.com/defect-or-bug-tracking-tool
Jira
Bugzilla
BugNet
Redmine
Mantis
Trac
Backlog
https://www.guru99.com/top-20-bug-tracking-tools.html
What is Defect/Bug?
errorbugfailure.png
A defect is an error or a bug, in the application which is created.
A programmer while designing and building the software can make mistakes or errors. These
mistakes or errors mean that there are flaws in the software. These are called defects.
When actual result deviates from the expected result while testing a software application or
product then it results into a defect. Hence, any deviation from the specification mentioned in
the product functional specification document is a defect. In different organizations it’s called
differently like bug, issue, incidents or problem.
When the result of the software application or product does not meet with the end user
expectations or the software requirements then it results into a Bug or Defect. These defects
or bugs occur because of an error in logic or in coding which results into the failure or
unpredictable or unanticipated results.
When a tester finds a bug or defect it’s required to convey the same to the developers. Thus
they report bugs with the detail steps and are called as Bug Reports, issue report, problem
report, etc.
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.
What is Defect?
When the application is not working as per the requirement is knows as defects. It is specified
as the aberration from the actual and expected result of the application or software.
In other words, we can say that the bug announced by the programmer and inside the code is
called a Defect.
If a developer finds an issue and corrects it by himself in the development phase then it’s
called a defect.
What is Error?
We can’t compile or run a program due to coding mistake in a program. If a developer unable
to successfully compile or run a program then they call it as an .
The Problem in code leads to errors, which means that a mistake can occur due to the
developer's coding error as the developer misunderstood the requirement or the requirement
was not defined correctly.
The developers use the term error
What is Failure?
Once the product is deployed and customers find any issues then they call the product as a
failure product. After release, if an end user finds a issue then that particular issue is called as
if an end-user detects an issue in the product, then that particular issue is called a failure.
For example, in a bank application if the Amount Transfer module is not working for end-
users when the end-user tries to transfer money, submit button is not working. Hence, this is
a failure.
Reasons Why Bugs Occur?
1. Lack of Communication
2. Repeated Definitions Required
3. Policy Framework Does Not Exist
4. Performance Errors
5. Lots of Recycling
Defect life cycle is a cycle which a defect goes through during its lifetime. It starts when
defect is found and ends when a defect is closed, after ensuring it’s not reproduced. Defect
life cycle is related to the bug found during testing.
The defect life cycle can vary from organization to organization and also from project to
project based on several factors like organization policy, software development model used
(like Agile, Iterative), project timelines, team structure etc.
Some organizations / projects / managers may adopt a simpler life cycle while others may use
a more extensive life cycle
The bug life cycle is also known as the Defect life cycle. In the Software Development
Process, the bug has a life cycle. The bug should go through the life cycle to be closed. The
bug life cycle varies depends upon the tools (QC, JIRA, etc.,) used, and the process followed
in the organization.
While testing a software application or product if large number of defects are found then it’s
called Buggy
What is Severity and Priority?
1) Severity:
It is the extent to which the defect can affect the software. In other word it defines the impact
that a given defect has on the system. For example: If an application or web page crashes
when a remote link is clicked, in this case clicking the remote link by a user is rare but the
impact of application crashing is severe. So the severity is high but priority is low.
2) Priority:
Priority defines the order in which we should resolve a defect. Should we fix it now, or can it
wait? This priority status is set by the tester to the developer mentioning the time frame to fix
the defect. If high priority is mentioned then the developer has to fix it at the earliest. The
priority status is set based on the customer requirements. For example: If the company name
is misspelled in the home page of the website, then the priority is high and severity is low to
fix it.
Critical: The defect that results in the termination of the complete system or one or more
component of the system and causes extensive corruption of the data. The failed function is
unusable and there is no acceptable alternative method to achieve the required results then the
severity will be stated as critical.
Major: The defect that results in the termination of the complete system or one or more
component of the system and causes extensive corruption of the data. The failed function is
unusable but there exists an acceptable alternative method to achieve the required results then
the severity will be stated as major.
Moderate: The defect that does not result in the termination, but causes the system to produce
incorrect, incomplete or inconsistent results then the severity will be stated as moderate.
Minor: The defect that does not result in the termination and does not damage the usability of
the system and the desired results can be easily obtained by working around the defects then
the severity is stated as minor.
Cosmetic: The defect that is related to the enhancement of the system where the changes are
related to the look and field of the application then the severity is stated as cosmetic.
What are the types of Priority?
Low: The defect is an irritant which should be repaired, but repair can be deferred until after
more serious defect have been fixed.
Medium: The defect should be resolved in the normal course of development activities. It can
wait until a new build or version is created.
High: The defect must be resolved as soon as possible because the defect is affecting the
application or the product severely. The system cannot be used until the repair has been done.
Few very important scenarios related to the severity and priority which are asked during the
High Priority & High Severity: An error which occurs on the basic functionality of the
application and will not allow the user to use the system. (Eg. A site maintaining the student
details, on saving record if it, doesn’t allow to save the record then this is high priority and
high severity bug.)
High Priority & Low Severity: The spelling mistakes that happens on the cover page or
heading or title of an application.
High Severity & Low Priority: An error which occurs on the functionality of the application
(for which there is no workaround) and will not allow the user to use the system but on click
of link which is rarely used by the end user.
Low Priority and Low Severity: Any cosmetic or spelling issues which is within a paragraph
or in the report (Not on cover page, heading, title).
Database Management System (DBMS) is a software for storing and retrieving users’ data
while considering appropriate security measures. It consists of a group of programs which
manipulate the database. The DBMS accepts the request for data from an application and
instructs the operating system to provide the specific data. In large systems, a DBMS helps
users and other third-party software to store and retrieve data.
What is Database?
The database is a collection of inter-related data which is used to retrieve, insert and delete the
data efficiently. It is also used to organize the data in the form of a table, schema, views, and
reports, etc.
For example: The college Database organizes the data about the admin, staff, students and
faculty etc.
Using the database, you can easily retrieve, insert, and delete the information.
Advantages of DBMS
Controls database redundancy: It can control data redundancy because it stores all the data in
one single database file and that recorded data is placed in the database.
Data sharing: In DBMS, the authorized users of an organization can share the data among
multiple users.
Easily Maintenance: It can be easily maintainable due to the centralized nature of the database
system.
Reduce time: It reduces development time and maintenance need.
Backup: It provides backup and recovery subsystems which create automatic backup of data
from hardware
and software failures and restores the data if required.
multiple user interface: It provides different types of user interfaces like graphical user
interfaces, application program interfaces
Cost of Hardware and Software: It requires a high speed of data processor and large memory
size to run DBMS software.
Size: It occupies a large space of disks and large memory to run them efficiently.
Complexity: Database system creates additional complexity and requirements.
Higher impact of failure: Failure is highly impacted the database because in most of the
organization, all the data stored in a single database and if the database is damaged due to
electric failure or database corruption then the data may be lost forever.
It uses a digital repository established on a server to store and manage the information.
It can provide a clear and logical view of the process that manipulates data.
DBMS contains automatic backup and recovery procedures.
It contains ACID properties which maintain data in a healthy state in case of failure.
It can reduce the complex relationship between data.
It is used to support manipulation and processing of data.
It is used to provide security of data.
It can view the database from different viewpoints according to the requirements of th
RDBMS is the basis for SQL, and for all modern database systems such as MS SQL Server,
IBM DB2, Oracle, MySQL, and Microsoft Access.
The data in RDBMS is stored in database objects called tables. A table is a collection of
related data entries and it consists of columns and rows.
Look at the "Customers" table:
Every table is broken up into smaller entities called fields. The fields in the Customers table
consist of Customer ID, Customer Name, Contact Name, Address, City, Postal Code and
Country. A field is a column in a table that is designed to maintain specific information about
every record in the table.
A record, also called a row, is each individual entry that exists in a table. For example, there
are 91 records in the above Customers table. A record is a horizontal entity in a table.
A column is a vertical entity in a table that contains all information associated with a specific
field in a table.
1. MySQL
2. PostgreSQL
3. Microsoft SQL Server
4. Oracle Database
5. SQLite
6. IBM Db2
7. MariaDB
8. Amazon Aurora
9. SAP HANA
10. Teradata
1. MongoDB
2. CouchDB
3. Redis
4. Cassandra
5. Neo4j
6. Raven DB
7. Orient DB
8. Microsoft Access
9. Firebase Realtime Database
What is SQL?
DESC
The ORDER BY keyword sorts the records in ascending order by default. To sort
the records in descending order, use the DESC keyword.
The following SQL statement selects all customers from the "Customers"
table, sorted ascending by the "Country" and descending by the
"CustomerName" column:
Example
SELECT * FROM Customers
ORDER BY Country ASC, CustomerName DESC;
SQL Aliases
Example
SELECT CustomerID AS ID
FROM Customers;
Example
The BETWEEN operator selects values within a given range. The values can be
numbers, text, or dates.
The BETWEEN operator is inclusive: begin and end values are included.
Example
NOT BETWEEN
To display the products outside the range of the previous example, use NOT
BETWEEN:
Example
SELECT * FROM Products
WHERE Price NOT BETWEEN 10 AND 20;
BETWEEN with IN
The following SQL statement selects all products with a price between 10
and 20. In addition, the CategoryID must be either 1,2, or 3:
Example
SELECT * FROM Products
WHERE Price BETWEEN 10 AND 20
AND CategoryID IN (1,2,3);
The LIKE operator is used in a WHERE clause to search for a specified pattern in
a column.
There are two wildcards often used in conjunction with the LIKE operator:
The percent sign % represents zero, one, or multiple characters
The underscore sign _ represents one, single character
Example
Wildcard characters are used with the LIKE operator. The LIKE operator is
used in a WHERE clause to search for a specified pattern in a column.
Wildcard Characters
Symbol Description
UPDATE Customers
SET ContactName = 'Alfred Schmidt', City= 'Frankfurt'
WHERE CustomerID = 1;
Delete a Table