Basics of Software Testing
Basics of Software Testing
Unit - 1
- Defects per thousand lines of code (defects/KLOC) - Testing cost per KLOC - Actual schedule of system testing - Delivery schedule slippage
Organizational metrics allow senior management to
monitor the overall strength of the organization and points to areas of weakness.
Asst. Prof. Bhavani K
specific project.
Examples: The ratio of actual-to-planned system test
of successful tests to the total number of tests in the system test phase.
3 Asst. Prof. Bhavani K
- The number of errors found in different testing phases (Unit Test, Integration Test, and System Test)
4 Asst. Prof. Bhavani K
to the product. For example Should the product be released to the client?
Examples:
(1) Cyclomatic complexity: proposed by Thomas McCabe based on the control flow of a program. V(G) = E - N + 2p V(G) is the complexity of the control flow graph, E is the edges, N nodes, p the connected procedures V(G) of the value 5 or less are preferred
5 Asst. Prof. Bhavani K
(2) Halstead metrics: proposed by late Prof. Maurice Halstead B = 7.6 E(0.667)S(0.333) B represents the number of errors during software development, S the program size and E is the effort.
Some Hasltead Measures of Program complexity and
effort - Operation Count N1 Number of Operators in a Program - Operand Count N2 Number of Operands in a program
Allows the management to plan testing resources.
6 Asst. Prof. Bhavani K
of severity
Test Coverage: Fraction of Testable items
6.8 Testability
IEEE
definition: degree to which a system or component facilitates the establishment of test criteria and the performance of tests to determine whether those criteria have been met. design and implementation.
Static testability metrics : software complexity. Dynamic testability metrics : code based coverage
criteria.
High testability is a desirable goal.
10 Asst. Prof. Bhavani K