wiki:path:pathMap

Version 8 (modified by michael.perscheid, 10 years ago) ( diff )

--

PathMap

PathMap is an extended unit test runner that provides valuable feedback for software maintenance tasks such as debugging, testing, and program comprehension. This tool that does not only verify test cases but also analyze them in order to provide feedback about test quality, identify failure causes, derive likely invariants, and trace requirements.

Description

Apart from the new perspective on one specific test case, we also consider the relationship between several test cases and reveal their hidden knowledge. Test cases possess a valuable source of information as they implicitly define expected and unexpected behavior all over the system. During the execution of their exemplary assertions, they do not merely cover directly-tested methods but rather large call sequences through internal parts of the system. With an entire analysis and comparison of all behavior and state details on these

Each test case path includes numerous method calls and state changes which are a valuable but hidden source of information for several software engineering activities. During their execution, test cases check not only the explicit assertions in their definitions but also establish implicit assertions in all other used program entities. As long as test cases finish with correct results, we assume that everything on their execution paths is also valid1. Thus, we can inductively derive from the specific and correct run-time values more generalized properties that reveal these implicit assertions. With this hidden test knowledge, developers have additional information for understanding their programs. For example, our type harvesting exploits test cases to obtain type information for a code base automatically [103]. We derive type data from the concrete objects used during test case executions and provide developers this hidden information to assist in navigating source code and using application programming interfaces (APIs) correctly.

We assume that test cases own a hidden and valuable source of information

As test cases own a hidden and valuable source of information, this tool supports developers in revealing this data

We start with the essential assumption that test cases yield a hidden and valuable source of information hidden knowledge

We have developed an extended test runner called PathMap that supports spectrum- based fault localization within the system structure. It provides a scalable tree map visualization and a low overhead analysis framework that computes spectrum-based anomalies at methods and refines results at statements on demand.

PathMap is our extended test runner that provides valuable feedback for restricting the initial search space. It realizes our structure navigation by computing spectrum-based anomalies and presenting the results in form of a tree map. Based on these results, it integrates our team navigation and its developer ranking metric. In addition to it, developers also start the inductive analysis for our state navigation from here, which harvests passing test cases in order to create contracts.

REF TO TUTORIALS DEBUGGING: TFDN REVERSE ENGINEERING??: TQF...

Screenshot

How to Use

User Interface

Test Runner

test pane, standard buttons, tree map, text boxes

Test Quality Flap

See also Test Quality Tutorial

Profiling Flap

See also Test Quality Tutorial

Fault Localization Flap

See also TDFN Tutorial

Induction Flap

See also TDFN Tutorial and type harvesting

Traceability Flap

See also Traceability Tutorial

Global Options Flap

Attachments (10)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.