从命令行启用代码覆盖

要验证代码是否符合指定的代码覆盖接受条件,可从命令行启用代码覆盖。要执行此操作,您需要:

还可以从工作台外部生成代码覆盖报告从命令行禁用代码覆盖

将 CLASSPATH 配置为启用代码覆盖

要将 CLASSPATH 配置为启用代码覆盖,请设置以下 CLASSPATH 环境变量:

运行代码覆盖检测脚本

在 Windows 上,检测脚本为 instrument.bat;在 Linux 上,为 instrument.sh。

检测脚本的格式如下:

instrument.bat/sh -in <src-input-directory> [-baseline <baseline-file>] [-saveBackup] [-verbose] [-output <output-dir>]

其中:

in:
指定包含要检测的类文件的目录的“路径分隔”列表。路径分隔符取决于操作系统(在 Windows 上是分号“;”,在 Linux 上是冒号“:”)。


baseline:
指定存储基线文件的路径。仅在要从工作台外部生成代码覆盖报告时使用。基线文件是作为基准的文件,已检测的代码将与该文件进行对比,代码覆盖统计信息将根据该文件生成。它还用作代码覆盖报告生成器的输入。


saveBackup:
指定是否要将原始类文件和 jar 文件重命名为 *.bak。如果包含 saveBackup 选项,那么将生成备份文件;如果省略该选项,则会覆盖原始文件(从而丢失原始文件)。


verbose:
指定应输出参考消息。


output:
指定要存储已检测文件的输出目录;否则,已检测文件将存储在 input 目录中。

示例 1

在以下示例中,将对 Windows 目录 C:\java_codeC:\java_tests 下的文件启用代码覆盖,而不生成这些文件的备份。基线文件存储在 C:\llc\coverage_reports 中,输出参考消息,输出文件存储在 C:\instrumented_files

instrument.bat -in C:\java_code;C:\java_tests -baseline C:\llc\coverage_reports -verbose -output C:\instrumented_files

示例 2

在以下示例中,将对 Linux 目录 C:/java_sourceC:/testcase_source 下的文件启用代码覆盖,并生成这些文件的备份。不创建基线文件,不输出参考消息,输出文件存储在 C:/instrumented_files

instrument.sh -in /java_source:/testcase_source -saveBackup -output /instrumented_files

从工作台外部生成代码覆盖报告

请参阅生成代码覆盖报告

从命令行禁用代码覆盖

要从命令行禁用已检测的类,请重新编译项目,或者如果启用了 saveBackup,可以将 .class 文件替换为 .class.bak 文件。

相关概念
代码覆盖指示符

相关任务
启用代码覆盖
配置代码覆盖级别和过滤器
配置代码覆盖指示符
分析代码覆盖报告