These are the steps to enable code coverage for your applications and then run them to produce code coverage reports:
While an application is running with code coverage, code execution is logged for each program and sub-program that has been compiled with code coverage enabled. The results are stored in a binary results file which has the filename extension .tcz. In the IDE, you can specify your preferences for what level of details test coverage should write into the results file depends on how you configure test coverage.
For example, you can tag statements in your source code and use code coverage to report on whether these statements have been executed. This is particularly useful if you want to see the coverage of new or changed lines in your source code.
For convenience, Visual COBOL visualizes the code coverage information from the results file by showing statistics about covered (executed) or missed (unexecuted) blocks and programs in a Code Coverage view and by highlighting the covered and missed blocks in the editor in different colors. You can produce code coverage reports in HTML format.
Running a program with code coverage uses significantly more resources than running the same program without code coverage enabled. As a result, we recommend that you use code coverage only in development systems; we recommend that you do not use code coverage in production systems.
A block is a section of code that, when executed, is executed consecutively and linearly. This means you can assume that if one part of the block executes, then the rest of the block has been executed as well.
Code that is not executed linearly (such as IF THEN ELSE statements, where the individual clauses in the statement are not executed in a single pass) includes more than one block of code.
Blocks of code that are executed are referred to as covered, while blocks of code that are not executed are referred to as missed.
Code coverage in the IDE utilizes the Test Coverage command line utility. The following restrictions of the Test Coverage utility also apply to code coverage: