×

Metrics for testing

There are different types of metrics used in software testing to measure different parameters. So, for different purposes, different metrics are used by the developer. For example:

  1. The type of metrics used to measure overall testing effort (how much time and effort are required in making software) – Function-Based Metrics.
  2. Metric is used to measure several test cases used in a program – Bang Metric.
  3. Metric used for basis path testing – Cyclomatic complexity

There is a different method of testing derived from Halstead's theory used to test the effort. Testing can be estimated with this method.

V= Program Volume

PL = Program Level

E = Software science effort (testing effort)

PL = 1/ (n1/2) * (N2/ n2)

E= V/PL

The breadth of testing = Number of requirement tested/ Total Number of requirement

Depth of testing = Independent Basis path covered by testing / total number of basis paths in the program * 100

We can measure the following terms with metrics:-

  1. Field bugs
  2. Bug arrival rate
  3. Performance of software
  4. Code churn
  5. Counts (lines, files….)
  6. Test failures
  7. Static analysis findings

Software quality metrics are the results of test executions done on data and programs. Software quality metrics begins with three types of reports:

  • Core
  • Extra
  • Pro tips

Core software reports

These are non- result types of reports resulting from exploratory testing ( focus less on actual/ pass or fail result). It shows the experience of the user. There are two types of core reports:-

  • The test run summary
  • Defect/ severity and status

Test run summary- A test run summary is a score report that everybody wants to see. It summarizes all testing activities (what is going on form project to project, cycle to cycle, and so many areas). It precisely tells what is going on in an application.

Defect reporting -It is the second report contains three things- status, priority, and severity. A defect report determines the importance of defects and finds out the solutions to the bugs immediately. It also answers about the status of the software.

Software reports also include some extra reports:

  • Weekdays report
  • Result received per requirement
  • Defect density

Weekdays report - This report shows which days are active for testing and allows you to reallocate test resources on that need.

Result received per requirement- It helps specify under and over testing requirements for execution of test and adequately shows which percentage of testing is assigned to each requirement.

Defect density indicates the defect that makes application or functional areas identify risky applications or functional areas.

Pro- Tips for software quality include:

  • Manual v/s animated testing
  • Days since run
  • Flapping

Manual v/s animated testing - Some manual test are moved to automated testing to understand which type of testing produce high value, Some manual test are moved to automated testing to understand which type of testing produce high value, Some manual test are moved to automated testing to understand which type of testing produce high value, Some manual test is moved to automated testing to understand which type of testing produce high value.

Days since run - Software quality is also measured by keeping a track record of the testing software from the starting day, and it will find out which test hasn’t run in an extended period and reduce the library of tests that have not been run recently.

Flapping - Flapping report shows the test pass result under one set of conditions that are always falling under another set. After the test has passed, recheck whether the test case has changed or written correctly or check if there’s a problem with the requirement.


Related Topics

Constructive Cost Model (COCOMO)

The constructive cost model (COCOMO) is one of the most widely used software cost estimation models. This model is developed by B.W.Boehm in 1981. COCOMO model is based on LOC, i.e., the number...

5 minutes read.

Structured Analysis and Design (SA/SD)

When the software systems keep getting bigger and more complex, you need a way to represent the model systematically. Structured Design and Structured Analysis, often referred to as SA/SD, is...

4 minutes read.

Project management activities

Project management activities Software project management involves many activities, including project planning, software product scope, cost estimation in various terms, scheduling of tasks and events, and resource management. Project management activities may include: Project PlanningScope ManagementProject...

2 minutes read.

Load Balancer – System Design

As software engineering students or IT enthusiasts, most of us have wondered how these huge IT applications handle the millions of simultaneous requests on their servers. The sheer hard work...

9 minutes read.

Umbrella Activities in Software Engineering

The various stages of software engineering are tied to one another. Various software process models have different ways of expressing or making these processes available. To manage the development, quality,...

3 minutes read.

Object Oriented Metrices in Software Engineering

Metrics are used to measure the quality of software on different parameters. It provides acomputed accurate estimation of projects that help in developing software with minimal fault. “Metric is a set...

7 minutes read.

Spiral Model

The problem with traditional software process models is that they do not adequately deal with uncertainty, which is inherent to software projects. Major software projects had failed because project risks were neglected, and...

3 minutes read.

Agile Model in Software Engineering

The Agile method acquires the features of the iterative or incremental process model. More focus on process adaptability and customer satisfaction through the timely delivery of working software. The agile method split the...

2 minutes read.

What is System Design

System design is simply the systematic process used to design the basic architecture of an electronic control system by defining essential elements like modules or components and their interfaces. This...

3 minutes read.

Routing Requests through Load Balancers

Let us first understand what load balancers are Assume a system works with multiple machines or servers, and as the requests arrive, they need to be routed to any one of...

3 minutes read.

Big-Bang Model in Software Engineering

In the Big-Bang Model, developers do not adopt any specific process. Development begins only with the necessary funds and efforts as input, and output is developed software that may or may not be...

1 minute read.

RAD Model in Software Engineering

RAD Model is an incremental process model and was developed by IBM in the 1980s and described in the book of James Martin entitled Rapid Application Development. Hence, user involvement is essential from...

3 minutes read.

Overall Equipment Effectiveness

Overall Equipment Effectiveness (OEE) Overall equipment effectiveness is a software development metric used to diagnose a product or machinery's manufacturing productivity and effeteness. The term OEE was introduced by Seiichi Nakajima San...

4 minutes read.

Information Flow Metrics

This metric is purely based on information. Information flow metric is different from size metric, and data structure metric as size metric is based on the final size of program...

4 minutes read.

Software Engineering Tutorial

The software has become critical to advancement in almost all areas of human endeavor. The art of programming is no longer enough to construct large programs. There are serious problems with the...

8 minutes read.

Strategies for System Design

System Design is crucial to showcase the System's architecture used for the business. System Design is essential to implement the interfaces and the data flow to satisfy all the requirements...

4 minutes read.

SDLC in Software Engineering

SDLC SDLC stands for the Software Development life cycle. It is a pictorial and diagrammatic representation of the software life cycle. A life cycle model represents all the techniques required to integrate software into the...

3 minutes read.

Waterfall Model in Software Engineering

The most popular model is the waterfall model. This model has five phases: Requirement analysis and specification DesignImplementation & unit testing Integration and system testing phaseOperation and maintenance These phases often occur one...

3 minutes read.

Project Management

Project Management What is a software project? The project is a set of tasks that need to be completed to reach a clear result. The project is also defined as the set of inputs...

2 minutes read.

Metrics for testing

There are different types of metrics used in software testing to measure different parameters. So, for different purposes, different metrics are used by the developer. For example: The type of metrics...

3 minutes read.