1 / 15

test coverage tools

What Is Test Coverage?. Finding areas of a program not exercised by a set of test casesCreating additional test cases to increase coverageDetermining a quantitative measure of code coverage, which is an indirect measure of qualityIdentifying redundant test cases that do not increase coverage. Where Test Coverage Fits Into GUMP .

Anita
Download Presentation

test coverage tools

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


    1. Test Coverage Tools Elonna Thompson Sources ATAC Tutorial Code Coverage Analysis. http://www.bullseye.com/coverage.html Gump++ Unit Test Standard. Presentation. Dr. Norman Wilde. Fall 2002, University of West Florida. Software Testing Resources. http://www.aptest.com/resources.html#app

    3. Where Test Coverage Fits Into GUMP++ It is used as part of the Unit Test Standard for White Box Testing To get as close as possible to 100% block and decision coverage Though it is not required to save unit tests, it is encouraged and ATAC can help choose the best tests i.e. most coverage for in least amount of tests

    4. Test Coverage Analysis Tools ATAC is used for programs written in C/C++ Measures how thoroughly a program is tested by a set of tests using data flow coverage techniques Identifies areas that are not well tested Identifies overlap among tests (redundancy) Finds minimal covering test sets

    5. Testable Attributes Blocks of consecutive statements Branch decisions Various combinations of assignments and uses of variables

    6. Adequate Tests Tests are considered adequate with respect to a given coverage criterion if all of the testable attributes identified by this criterion are exercised at least once by the set of tests It is difficult to have completely adequate coverage so ATAC provides a coverage measure (percentage of testable attributes that are exercised by the test set) Function Entry

    7. ATAC’s Coverage Measures Function Entry Block Decision C-Use P-Use All Use

    8. Function Entry Coverage Counts the the functions defined in a program that are called at least once Includes only functions coded in the source files compiled with ATAC Does not need to be called by a function compiled with ATAC

    9. Block Coverage Counts the branch free executable code fragments that are exercised at least once A block may be more than one C statement if there is no branching between statements Stronger than Function Entry Coverage, if all blocks are covered, all functions must have been entered

    10. Decision Coverage Counts the number of branches that have been followed at least once If a decision is not covered during testing, an error in the decision predicate may not be revealed Decision Coverage is stronger than block coverage because it implies block coverage except for functions with no branches

    11. C-use Coverage Computational variable use coverage Counts the number of combinations of an assignment to a variable and a use of the variable in a computation that is not part of a conditional expression Not comparable to other measures

    12. P-use Coverage Predicate variable use coverage Counts the number of combinations of an assignment to a variable, use of a variable in a conditional expression, and all branches based on the value of the conditional expression Adequate P-use coverage implies adequate C-use coverage

    13. All-use Coverage The sum of p-use and c-use coverage measures

    14. Problem With ATAC? It needs to be replaced because it is no longer available for the current gcc Also, would be nice to find a tool to analyze coverage of Java code.

    15. Alternative Analyzers

More Related