本节提供有关 Ant 的 Jtest 任务及其参数的信息。提供以下任务:
jtest
执行 Jtest 的 Ant 任务。
参数(嵌套元素)
名称 | 接受的值/数据类型 | 说明 | 是否必需 |
---|---|---|---|
compilation | 编译 | 手动配置数据的说明(请参阅手动自定义编译数据) | 否 |
compilations | 列表 | 手动配置数据的说明列表(请参阅手动自定义编译数据) | 否 |
config | 字符串 | ||
dataUpdate | 字符串 | 允许手动更新从构建中收集的编译数据。 用户属性为: | 否 |
exclude | 字符串 | 指定所选资源中的文件或包的子集并从分析中排除。您可以提供限定名称或使用 Ant glob 匹配更多文件名。 用户属性为: | 否 |
excludes | 列表 | exclude 参数列表。 用户属性为: | 否 |
excludeTestSources | true | false | 从分析中排除测试源代码。 用户属性为: | 否 |
fail | true | false | 报告任何违规时,构建失败。 用户属性为: | 否 |
home | 路径 | 指定 Jtest 安装目录。如果未定义,将使用 PATH 中指定的 Jtest 位置。 用户属性为: | 建议指定 |
ignoredIds | 列表 | 忽略的 compilation ID 列表。 用户属性为: | 否 |
include | 字符串 | 指定所选资源中的文件或包的子集并包含在分析中。 用户属性为: | 否 |
includes | 列表 | include 参数列表。 用户属性为: | 否 |
publish | true | false | 启用将本地分析的结果发送到 DTP 服务器。 用户属性为: | 否 |
report | 路径 | 指定创建报告的目录。 用户属性为: | 否 |
resource | 字符串 | 指定分析的输入范围。如果没有指定资源,Jtest 将分析每个构建项目中的资源。 用户属性为: | 否 |
resources | 列表 | resource 参数列表。 用户属性为: | 否 |
settings | 路径 | 包含自定义配置设置的 *properties 文件的绝对或相对路径。 用户属性为:jtest.settings | 否 |
settingsList | Listq | settings 参数列表。 用户属性为: | 否 |
showDetails | true | false | 显示详细的进度信息。 用户属性为: | 否 |
showSettings | true | false | 打印当前设置和自定义设置,以及每个设置和自定义设置的位置信息(例如,在 jtest.properties 文件中)。 用户属性为: | 否 |
skip | true |false | 允许跳过 Jtest 执行阶段。如果设置为 用户属性为: | 否 |
tempDir | 路径 | 临时资源(如数据文件或缓存)存储位置的路径。此设置与报告位置无关。 | 否 |
参数的详细信息
config
测试配置的名称。支持以下配置类型:
- 内建测试配置,例如
"builtin://Recommended Rules"
- dtp 测试配置,例如
"dtp://New Config"
- 用户自定义测试配置,例如
"user://Your Config"
用户自定义测试配置应作为 *.properties 文件存储在 [INSTALL_DIR]/configs/user 目录中。
dataUpdate
允许手动更新从构建中收集的编译数据。
- 支持的操作:prepend、append 和 set。
- 支持的数据类型:classpath、bootpath、sourcepath、resourcepath、binarypath、sourcecode(仅限 set)和 encoding(仅限 set)
- 范围:将更新收集的所有项目数据
exclude
指定所选资源中的文件或包的子集并从分析中排除。可以提供限定名称。您可以使用 glob 模式来匹配更多的文件名。
示例 1:以下模式会排除 com.parasoft 包及其子包中的所有文件: /com/parasoft/**
示例 2:以下模式会排除 com.parasoft.jtest 包中的所有文件,但不排除其子包中的所有文件: /com/parasoft/jtest/*
示例 3:以下模式会排除指定目录及所有子目录中的所有文件:path:/home/user/project/src/test/java/**
include
指定所选资源中的文件或包的子集并包含在分析中。您可以使用 glob 模式来匹配更多的文件名。
示例 1:以下模式会包括 com.parasoft 包及其子包中的所有文件:/com/parasoft/**
示例 2:以下模式会包括 com.parasoft.jtest 包中的所有文件,但不排除其子包中的所有文件:/com/parasoft/jtest/*
示例 3:以下模式会包括指定目录和所有子目录中的所有文件:path:/home/user/project/src/test/java/**
resource
指定分析的输入范围。如果没有指定资源,Jtest 将分析每个构建项目中的资源。
使用以下模式指定路径: ${ProjectName}/my/src/dir/my/package/file.java"。您可以使用以下通配符:
- ? - 匹配一个字符
- * - 匹配零个或多个字符,不包括路径分隔符(/ 字符)
- ** - 匹配整个路径,包括路径分隔符(/ 字符)
settings
包含自定义配置设置的 *properties 文件的绝对或相对路径。
agent
参数
名称 | 接受的值/数据类型 | 说明 | 是否必需 |
---|---|---|---|
task | JUnit | Java | 将收集覆盖率的任务。如果将 skip 参数设置为 true,该任务将在不使用 Jtest 代理的情况下执行。 | 否 |
property | 字符串 | 允许为 -javaagent 设置额外的参数。 用户属性为: | 否 |
home | 路径 | Jtest 安装目录。 用户属性为: | 是 |
skip | true | false | 允许跳过 Jtest 执行阶段。如果设置为 用户属性为: | 否 |
runtimeDataLocation | 路径 | 覆盖率运行时数据存储文件的路径。 用户属性为: | 否 |
metadataLocation | 路径 | 覆盖率元数据存储文件的路径。 用户属性为: | 否 |
coverage | 用于配置覆盖率收集的参数集。
| 否 |
参数的详细信息
coverage
默认值为:
<jtest> <coverage> <skip>false</skip> <includes> <include>**</include> </includes> <excludes>< excludes> <testIncludes> <testInclude>**/*Test.class</testInclude> </testIncludes> <testExcludes><testExcludes> </coverage> </jtest>
metadataLocation
默认值为: ${basedir}/parasoft/jtest-instrument/metadata.data
property
有关可用选项的列表,请参阅配置覆盖率代理。作为 -javaagent
的参数提供的属性会覆盖 agent.properties 文件中配置的属性。
runtimeDataLocation
默认为:${basedir}/parasoft/jtest-instrument/runtimedata.data
monitor
此任务扫描构建以生成 Jtest Java 代理的设置,并在使用 monitorLocation
参数指定的位置中创建一个 monitor 包。
monitor 包中包含以下文件:
- static_coverage.xml - 包含静态覆盖率信息的文件
- agent.jar - Jtest Java 覆盖率代理 jar 包
- agent.properties - 包含构建过程中生成的范围参数和其他属性的代理设置文件
- agent.sh/agent.bat - 生成应用程序监控所需的 Jtest Java 代理 VM 参数的脚本
- opentelemetry-javaagent.jar 和 jtest-otel-ext.jar - 在多用户覆盖率模式中使用的文件:原始 OpenTelemetry Java 代理及其 Jtest 扩展。此扩展用于收集将收集到的覆盖率数据分配给特定用户所需的信息。这些文件从
<INSTALL_DIR>/integration/coverage
目录拷贝。
属性
名称 | 接受的值/数据类型 | 说明 | 是否必需 |
---|---|---|---|
agentServerEnabled | true | false | 用于启用代理服务器的选项。 默认值为:true 用户属性为:jtest.agentServerEnabled | 否 |
autostartAgent | true | false | 用于自动启用覆盖率收集的选项。 默认值为:true 用户属性为:jtest.autostartAgent | 否 |
compilation | 配置 | 手动配置数据的说明(请参阅手动自定义编译数据) | 否 |
coverage | 用于配置覆盖率收集的参数集。
| 否 | |
exclude | 字符串 | 指定所选资源中的文件或包的子集并从分析中排除。您可以提供限定名称或使用 Ant glob 匹配更多文件名。 用户属性为: | 否 |
excludes | exclude 参数列表。 用户属性为: | 否 | |
home | 路径 | 指定 Jtest 安装目录。如果未定义,将使用 PATH 中指定的 Jtest 位置。 用户属性为: | 建议指定 |
ignoredIds | 列表 | 忽略的 compilation ID 列表。 用户属性为: | 否 |
include | 字符串 | 指定所选资源中的文件或包的子集并包含在分析中。 用户属性为: | 否 |
includes | include 参数列表。 用户属性为: | 否 | |
monitorLocation | 路径 | monitor 包创建位置的路径。 默认值为: ${project.build.directory}/jtest/monitor/monitor.zip 用户属性为:jtest.monitorLocation | 否 |
publish | true | false | 启用将本地分析的结果发送到 DTP 服务器。 用户属性为: | 否 |
report | 路径 | 指定创建报告的目录。 用户属性为: | 否 |
resource | 字符串 | 指定分析的输入范围。如果没有指定资源,Jtest 将分析每个构建项目中的资源。 用户属性为: | 否 |
resources | 列表 | resource 参数列表。 用户属性为: | 否 |
settings | 路径 | 包含自定义配置设置的 *properties 文件的绝对或相对路径。 用户属性为: | 否 |
settingsList | 列表 | settings 参数列表。 用户属性为: | 否 |
showDetails | true | false | 显示详细的进度信息。 用户属性为: | |
showSettings | true | false | 打印当前设置和自定义设置,以及每个设置和自定义设置的位置信息(例如,在 jtest.properties 文件中)。 用户属性为: | 否 |
skip | true | false | 允许跳过 Jtest 执行阶段。如果设置为 用户属性为: | 否 |
参数的详细信息
exclude
指定所选资源中的文件或包的子集并从分析中排除。可以提供限定名称。您可以使用 glob 模式来匹配更多的文件名。
示例 1:以下模式会排除 com.parasoft 包及其子包中的所有文件:/com/parasoft/**
示例 2:以下模式会排除 com.parasoft.jtest 包中的所有文件,但不排除其子包中的所有文件:/com/parasoft/jtest/*
示例 3:以下模式会排除指定目录及所有子目录中的所有文件:path:/home/user/project/src/test/java/**
include
指定所选资源中的文件或包的子集并包含在分析中。您可以使用 glob 模式来匹配更多的文件名。
示例 1:以下模式会包括 com.parasoft 包及其子包中的所有文件:/com/parasoft/**
示例 2:以下模式会包括 com.parasoft.jtest 包中的所有文件,但不排除其子包中的所有文件:/com/parasoft/jtest/*
示例 3:以下模式会包括指定目录和所有子目录中的所有文件:path:/home/user/project/src/test/java/**
resource
指定分析的输入范围。如果没有指定资源,Jtest 将分析每个构建项目中的资源。
使用以下模式指定路径: ${ProjectName}/my/src/dir/my/package/file.java"。您可以使用以下通配符:
- ? - 匹配一个字符
- * - 匹配零个或多个字符,不包括路径分隔符(/ 字符)
- ** - 匹配整个路径,包括路径分隔符(/ 字符)
settings
包含自定义配置设置的 *properties 文件的绝对或相对路径。
某些设置名称可能与构建系统插件专用的设置不一致。详细信息,请参阅配置设置。