Software testing → Chapter Basics -> software defects and defect management

First, the definition and classification of defects

1.1, software defects

  Definition: In software engineering lifecycle any departure from the requirements, the user can not complete the questions required function properly, including the presence in the assembly, device, or system software is not supported due to exceptional conditions and cause the system to fail so penalized.

  Look inside the product, is defective software product development or maintenance problems, errors.
  From the outside products, the missing items is invalid or contrary to the system required to achieve a certain function.

Concept: meet one of the following five rules, software defects that
(1) the software does not implement the functions of the product specification requirements
(2) the software product specification indicates an error occurred should not appear
(3) of the software product is not mentioned in the specification function
(4) unrealized software product specifications, although not explicitly mentioned but the goal should be achieved
(5) software difficult to understand, difficult to use, or run slowly - from the point of view testers - the end user will think bad

Development: software error, software failure, software failure

① software error: cause some problems discrepancies between actual and expected operating results operating results;
② software failure: that occurred during the software running in one does not want or unacceptable internal state;
③ software failure: The software can not meet the growing development needs; 

1.2, description and classification of software defects

  • Description of software defects

Merely a description of a flaw requires three core elements (fields).
Title: Description of the defect in simple words, is designed to allow developers know that this is a kind of defect
  major operation + defect Description
Description:
  role: to facilitate the development of reproducible and locate defects in
  the test environment: Browser: All / IE8, operations system: win7 x64
  test data: user name, password, account-related business
  steps to reproduce: defects found during
  defect Description: tell development, what do you think the defect is agreement on the understanding of the
  actual results are compared with the expected results to illustrate this flaw
shots:
  1. cut bigger, better cut the entire window or the entire desktop
  2. be careful not to try to contain bad information, such as group chat window
  3. Screenshot strongly suggested adding text describing the location and description of defect

  • Classification of software defects

1, the business logic
2, the data processing
3, the interface
. 4, the UI
. 5, performance
6, security
7, compatibility
8, the configuration
9, documents, etc.

Second, the defect management process

  2.1, the cause of the defects

  Often developers and testers told software errors and software defects are two different concepts, simple terms refers to software errors do not want to accept human error or not visible in the software lifecycle, software defects as a result of lead produce. During dynamic operation of the software in the system under certain conditions lead to exposure of the defects in the software failure, resulting in software failure. The reason software defects produced :   ① requirements specification writing is not comprehensive enough, incomplete, and inaccurate defect;   ② The design changes, there is no timely communication or communication is not smooth;   ③ the development process needs change;   ④ application developers do not understand or understand the inconsistencies in business;   writing ⑤ code is not strict, the lack of a comma, the dividend is zero and so   problems caused ⑥ running the software system hardware and software environment. Correct understanding of the root causes of defects in the definition and generation can help testers method to determine the defect is relatively easy to find, so the user requirements specifications or product specification is the key to determine the defects. Therefore, in the process of identifying defects, testers can start from the following aspects :   ① first test personnel to the demand specification or explanatory brochures and other documents to be very familiar with, because these documents reflect the user's actual business needs;   ② by understanding the tested product or system of industry and business background knowledge, to discover neglected issue;   ③ through continuous accumulation of their own testing experience and industry rules, found deep flaws;   ④ to gather, learn and share through communication others method of determining defects.
  






  



2.2 Introduction defect reports

Defect report is the main product test engineer, is also a major test team to deliver one thing. Its role is to enable developers can understand how defects are produced to facilitate better repair defects.
  Defect report several elements: the title defects, functional defects of the module point, the defects, defect type, the defect status, the status details of the step of defects, the severity of the defect, the defect priority, defect, according to the software version, to submit the defect, the date of submission. It also may provide a test case number associated with it.
  After defect treatment to fill in information: Fix the version number, repair people, refused / suspended person

2.3, defect management process

① the overall process

② defect submission process

③ defect repair process

④ defect verification process

⑤ defect rejection process flow

⑥ pending defect treatment process

⑦ dispute defect treatment process

Third, the measure defects and defect reports

3.1, measure defects

  Defects measure is part of software metrics, which itself can not detect defects, eliminate defects, but help to solve these problems. Further, when the correct measurement is continuously performed when the defect, and data quality attributes of the product process provides an effective basis for the implementation of process improvement and management activities.
  Measure the quality of software products, it focused on defect measurement software.
  Defects is to measure the defect data generated during the project to collect and quantify the dispersion of defect data unified management, making it an orderly and clear, then, the data is processed by using a series of mathematical functions, defect density analysis and trends information, thereby improving product quality and improve the development process.
  (1) tissue defect level metrics, the overall aim is to understand the organization of the defect situation, to understand the quality of customer satisfaction with the organization, the organization established a baseline to determine improvement activities.
  (2) project-level defects measure, the purpose is to understand the situation in real time the quality of the project (a lot of projects only in the final measure, including those iterative development project, in fact, too late), after the release caused by faulty maintenance workload forecasting, understanding the quality of customer satisfaction with the project.
  (3) measure the individual defects, the purpose of a detailed understanding of the reasons of the individual defects, and improve the implementation of operations.
  The first two measures are more in contact with everyone, but third measure is often ignored. This often leads to: quality assessment project repeatedly get on their own, but it is difficult to know how to improve; test group often do some improvements (such as increased test coverage, to extend the test period) to enhance defect removal efficiency, but the development team did not reduce defects produce the number of effective measures; software development follows the coding standards, but does not seem to help much to improve the quality.

3.2, bug reports

Defect reporting elements
report number The only index identifier
title Basic information simple description to convey defects
reporter Author of the original bug report
date The flaw was first reported date
version number Which version of the software appears the defect
priority Developers treatment and repair of defects has the order
Severity Describe the severity of the reported defects
Defect description A brief description of the defect
Operating Environment Environmental report the occurrence of defects in the operating system information
Steps to Reproduce Defects discovered be described in detail
Experimental results The actual results of running test case generation
expected results Informed by the report needs to run test cases may produce results
annex Add a picture or a visual display of the results of papers defects

Fourth, the defect management tool introduced

4.1, Bugzilla (free, cross-platform)

Bugzilla is a Bug tracking system designed to help you manage software development.
Bugzilla is an open-source Bug Tracking System, is designed for custom development of Unix. But the windows platform still can successfully install and use.
Testopia is a Bugzilla and integrated with the test case management system.
Its powerful features in the following areas:
1. The powerful search functions
2. User-configurable through Email announcement Bug change
3. cHANGE hISTORY
4. a description of the process by tracking and Bug
5. attachment Manager
6. complete product classification schemes and detailed security policies
7. the security review mechanism
8. the powerful back-end database support
9. Web , Xml, Email and a control interface
10. the user-friendly interface network
11. the variety of configuration settings
backward compatible version 12. Room

4.2, BugFree (free)

  BugFree is to learn from Microsoft's research and development processes and Bug management concept, the use of a Bug PHP + MySQL independent management system written. Simple, practical, free and open source (follow the GNU GPL).

4.3,, Quality Center (business, formerly known as Mercury TestDirector, cross-platform)

  HP Quality Center; provides a Web-based system automates software testing and quality management in a wide range of applications. Dashboard technology allows you to understand the verification and automate business processes, identify bottlenecks in production and hinder business results. HP Quality Center enables IT teams can be involved in application testing before the development process is complete. This will shorten the release schedules while ensuring the highest level of quality.
The quality of enterprise-class software solutions.

4.4, IBM Rational ClearQuest (commercial, cross-platform)

  IBM Rational ClearQuest is a powerful software development and testing tools. Integration and business process automation software and systems development. V7.0 provides enhanced requirements tracking, build tracking, enterprise test management, deployment and tracking functions. This provides a complete audit trail from development to deployment, and extends across the lifecycle traceability. Software to enhance the development process and automate, but also improve the understandability of the software life cycle, predictability and controllability.

4.5, JIRA (Business)

JIRA is a project plan, task allocation, demand management, bug tracking in one of the commercial software.
JIRA full-featured, user-friendly, easy to install, flexible configuration, privilege management, and scalability are very good.
Problems created by default JIRA types include New Feature, Bug, Task and Improvement four types can also define your own, so it First Process Management System.
Jira integration of project management, task management and defect management, many well-known open source projects are using JIRA.
JIRA is the more popular Java-based architecture management system, due to the company Atlassian provided free of charge to many open source projects bug tracking service, so in the open source world, its awareness is much higher than other products, but also ease of use better. At the same time, open source is its another feature, while users to buy its software, it will also purchase the source code in, easy to do secondary development.

4.6, Mantis (open source)

  Mantis is a lightweight PHP-based technical defect tracking system, similar to the JIRA system which functions mentioned earlier, is providing project management and defect tracking services in the form of Web operations. In function may not be so professional JIRA, JIRA interface is not pretty, but practical enough to meet the management and tracking of small and medium projects. More importantly, its open source, does not need to pay anything. But the current version there are some problems, can be expected to improve in future versions.

4.7, Bugzero free open-source, cross-platform)

  BUGZERO? Is a versatile, Bug tracking and defect management system (bug tracking system) network (web-based) and run in the browser (browser) based, it can be used to record, track, and classify software development process appears Bug defects present in the system and the hardware (defect). BUGZERO also a complete service management software, including integrated service desk hotline process management (Help Desk), can be used to record all kinds of daily affairs, change requests, and problem reports, and track and handle a variety of customer questioning, feedback, and opinions.
  BUGZERO provides a reliable central database of the company's internal team members and external customers to carry out coordination and information exchange at any time, any place, and so no records are well documented. It allows you to save time and effort. BUGZERO not only easy to use and full-featured, flexible, good flexibility to set a variety of actual work processes to meet your specific needs in business and production environments. This flexible, easy to use bug tracking process not only enhances the quality of project development, but also improve the production efficiency of the entire organization.

4.8, BugTracker (free, open source, cross-platform)

  Bugtracker is a complete bug / issue management system. It uses the Java Servlet as a web frontend, MySQL database as a background.

4.9, JTrac (open source)

  JTrac is a matter of open source and highly configurable tracking of Web applications. It is a general problem, tracking web application that can be easily customized, add custom fields and drop-down. Features include customizable workflow, field level permissions, e-mail integration, file attachments, and detailed historical perspective.

4.10, BugNet (open source)

  BugNet is a good open-source bug tracking and project management system

4.11, BugOnline (open source)

  BugOnline BUG is an open source system management. Its powerful, easy to use.
  Based asp.net2.0, sql server 2005 (including Express Edition), Ajax and other technologies.
  Some of the characteristics BugOnline:

①, online messaging and automatic E-mail notification function. New Bug Bug assigned to the user and at the same time will automatically notify the user.
②, excellent staff assignments, workload statistics.
③, living in the project role of rights management, work planning, process-oriented.
④, Bug state statistics, easy to control the progress of the project.
⑤, the SSL-based data transmission, to ensure that data is not to be taken to ensure safety. (Can also be set to non-SSL)
⑥, powerful reporting capabilities.

4.12, eTraxis (open source)

  eTraxis is a free web-based bug tracking system. The main features are: fully customizable templates, advanced filters, LDAP support, email notifications, subscriptions, reminders, flexible rights management, graphical project indicators.

4.13, URTracker (Business)

  URTracker is a universal process-oriented management issue tracking software. it can:

①, to help you centrally manage all types of issues, tasks, human interaction and other matters;
②, tracking each transaction processing;
③, process flow control issues;
④, provide an effective collaboration platform to simplify your team members interactions, enhance communication efficiency;
⑤, the accumulation of knowledge and information;
⑥, statistics and analysis to help you;

4.14 Little Tracker

  KisTracker a bug tracking and management software (original name: iTracker), powerful, easy to use, is based on WEB software to work together.
  It is used to help companies track issues and team work, management and recording process these issues It can be used:

1. Product BUG tracking
2. task tracking
3. Service Tracking
4. deal with various issues tracking
4. deal with various track

15, TestLink (open source)

TestLink for testing processes management, through the use of functions provided by TestLink,
you can test the process from test requirements, test design, test execution to complete management together,
at the same time, it provides a good variety of statistics and analysis of test results so that we can simply start testing and analysis of test results.
TestLink is one of sourceforge open-source projects. As a web-based test management system, TestLink's main functions include: test test test case management requirements management metrics and statistical functions perform a large number of test data management for the development of test cases covering Test Plan test requirements of.

Guess you like

Origin www.cnblogs.com/BalmyLee/p/11080104.html