A coverage application writes information about the lines of code in a file that run. A profiler application provides information about the lines that were actually run, how many times a line is run, duration, and more. Coverage and profiling enable a developer to identify problem areas in an application, especially skipped code and performance bottlenecks.
The Visual FoxPro Coverage Profiler is provided in two parts, a Coverage engine object you can use or customize and a multiple window application you can use to analyze programs and projects. The Coverage Profiler source files are not installed by default. To use these files, expand the XSource.zip file in the \Tools\XSource folder of the main Visual FoxPro directory.
The Coverage Profiler application (Coverage.app) provides several ways to view the data provided by the Coverage engine. Coverage.app is a subclass of the Coverage engine class. You can automate coverage or modify the user interface to suit your needs, run Coverage.app in unattended mode and not display the application window, or use engine features without using the interface.
When starting up, Coverage.app suspends coverage logging enabled with the SET COVERAGE command. When you release the coverage object, the application provides a choice to restore the SET COVERAGE setting.
In This Section
- Coverage Profiler Log File
- Describes how the Visual FoxPro Coverage Profiler uses a log file, which consists of records in comma-delimited lines.
- How to: Examine Application Coverage and Profile
- Provides information about how the Coverage Profiler can provide accurate and useful information about your project or application.
- Coverage Profiler Modification
- Describes how to change the default setting of the Coverage Profiler application so that it can run inside the main Visual FoxPro window, instead of in a separate window.
- Coverage Profiler Add-Ins
- Describes how to write add-ins and enhance the Coverage Profiler application.
- How to: Log Code Coverage
- Explains how code coverage gives you information about which lines of code have been executed and how long it took to execute them. You can use this information to refine your code for performance and ensure that you've adequately tested the code.
- Conserving Disk Space During Coverage Runs
- Discusses how you can change the size of some of the engine work table fields to make these tables somewhat smaller to avoid "out of disk space" errors during coverage runs.
- Coverage Engine Object
- Describes the Coverage engine class and its properties, methods, and events.
- Development Productivity Tools
- Provides information on developer tools provided for application development within the Visual FoxPro application and the language.
- IntelliSense Overview
- Provides information on IntelliSense, which displays information in popup windows and drop-down lists that assist you with statement and function completion syntax.
- Project Manager Hooks
- Describes how you can access a project programmatically, making it possible for you to manipulate a project as an object.
- Automating Keystroke Tasks with Macros
- Describes how you can record and save keystrokes in macros by using the Macros dialog box.