wiki:path:pathBrowser

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

--

PathBrowser

PathBrowser extends Squeak’s standard source code browser with additional user interface elements that provide access to Path's analyzed test information. So, developers can further improve their program comprehension with revealed coverage data, type information, and derived assertions about the system under observation.

Description

After analyzing the system with our PathMap, we offer developers access to the derived information with our extended source code browser called PathBrowser. We enhance the standard browser with mainly five new features. First, we reuse the already collected test coverage data from PathMap and present it in a new pane on the right side. With a click on a corresponding test case, developers can start a symbolic debugger or our PathFinder. Both tools stop their execution at the first call of the selected method and provide insights into its concrete run-time behavior. Second, based on the already collected test coverage, developers can also refine coverage data at statements on demand. For that, we re-execute all covering tests, analyze the currently selected method, and present the executed statements by underlining the corresponding source code. Third, with the help of our type harvesting approach, we have already gathered type information for instance variables, arguments, and return values from test cases. To support program comprehension during implementation tasks, we present this data with overlays that appear when developers mark a related variable. Fourth, we extend the browser with dynamic contracts from our test-driven fault navigation. There are buttons for displaying the source code of invariants (inv), pre- and post-conditions (pre/post). Developers can also add manual assertions to this source code. Finally, we offer a button to open a model-based source code view directly from the selected class or method snippet.

Screenshot

How to Use

  • open menu
  • note: new default browser
  • all Path tools open a PathBrowser
  • extensions only available if browsing classes of current project (ref PathProject)

User Interface

new pane link to test cases --> click on test case -> new browser, debugger, or pathfinder inv/pre/post -- contracts & anzeige im browser fenster new buttons coverage (underlined statements), path views (ref) overlay for type information (ref to type harvesting)

Attachments (1)

Download all attachments as: .zip

Note: See TracWiki for help on using the wiki.