可以通过配置 .properties 文件中的设置来自定义报告(请参阅配置概述)。本节提供了如何配置报告的示例。有关根据需求自定义报告的完整设置列表,请参阅报告设置

指定报告输出位置

可以使用 report.location 属性配置报告的位置。例如:

report.location=[path/to/location]

或者,也可以使用 -report 选项指定报告的输出目录。例如:

jtestcli -report [path/to/location]

Ant 和 Maven 模式

您可以使用以下模式在 Ant 或 Maven 中配置位置:

<report>location</report>

指定报告格式

默认情况下,报告以 HTML 格式生成。通过设置 report.format 属性,您可以在指定目录生成 PDF 报告或自定义扩展名的报告。例如:

report.format=pdf

支持自定义报告格式

通过构建一个指定了如何进行结果格式化的自定义 XSL 转换器,可以自定义本地生成和通过电子邮件发送的报告。例如,您可以使用自定义转换器将数据映射为符合内部安全策略要求的格式。

指定自定义报告格式的步骤:

  1. 创建一个 XSL 文件,指定要如何转换 XML 数据。
  2. 通过在 .property 文件中配置以下设置,指定 XSL 文件的位置以及生成文件应使用的扩展名:
    report.format=custom
    report.custom.xsl.file=<path to the XSL file>
    report.custom.extension=<extension of the resulting file>

    如果您在 IDE 中执行分析,可以在“报告”首选项页面指定 XSL 文件的位置和生成文件的扩展名,请参阅生成报告

可用参数

自定义 XSL 文件可以使用以下参数:

参数备注
report_type=disk_report|email_report指定生成的报告是通过电子邮件发送还是保存在本地磁盘驱动器上。 
test_params

用于启动生成此报告的产品的命令行。示例:

jtestcli:-config dtp://xtest-static.properties -localsettings /home/nightly/localsettings.properties -publish -report /home/nightly/reports/report.html -resource myproject -dtp.autoconfig [email protected]:8443

test_config_name

为生成此报告而执行的测试配置的名称。
示例:Recommended Rules

output_dir=[dir]

报告创建目录。可用于生成开发人员报告。

示例:<xsl:value-of select="concat($output_dir,$dev_reports_prefix,$authid,'.csv')"/> 

rules_dir_path=[path]

规则文档保存目录。可用于生成规则弹出信息/链接。

示例:<xsl:value-of select="concat('javascript:openWin(',$qt,$rules_dir_path,$id,'.html',$qt,')')"/> 

suppr_msgs=true|falsereport.suppressed_msgs 选项的值。详细信息,请参阅报告设置
dev_errors=true|falsereport.developer_errors 选项的值。详细信息,请参阅报告设置
dev_reports=true|falsereport.developer_reports 选项的值。详细信息,请参阅报告设置
show_active_rules=true|falsereport.active_rules 选项的值。详细信息,请参阅报告设置
associations=true|falsereport.associations 选项的值。详细信息,请参阅报告设置
dev_reports_prefix=[prefix]

用于命名开发人员报告的前缀。

示例:<xsl:value-of select="concat($output_dir,$dev_reports_prefix,$authid,'.csv')"/>

attachments=true|falsereport.mail.attachments 选项的值。详细信息,请参阅报告设置
authors_details=true|falsereport.authors_details 选项的值。详细信息,请参阅报告设置
contexts_details=true|falsereport.contexts_details 选项的值。详细信息,请参阅报告设置

报告格式

下表描述了支持的报告格式并列出以每种格式生成的报告文件的名称:

报告格式说明文件名

HTML

(默认)HTML 格式的报告,包含 Jtest 支持的所有结果

report.html

PDF

PDF 格式的报告,包含 Jtest 支持的所有结果。该报告基于 HTML 报告生成。

report.pdf

CSV

CSV 格式的报告,包含静态分析结果。report.csv

XSL 自定义

自定义格式的报告,包含经过用户自定义 XSL 转换处理的结果。所有 Jtest 支持的结果都可以包括在内;详细信息,请参阅支持的自定义报告格式

report_custom.xml

report_custom.html

JSON SARIF (静态分析结果交换格式)

包含符合 SARIF 规范的静态分析结果的报告;详细信息,请参阅 https://sarifweb.azurewebsites.net/report.sarif

用于 Azure DevOps 的 JSON SARIF

Azure DevOps 专用报告,包含符合 SARIF 规范的静态分析结果;详细信息,请参阅 https://sarifweb.azurewebsites.net/

report_azure.sarif

用于 GitLab 的 JSON SAST

GitLab 专用报告,包含符合 SAST 规范的静态分析结果;详细信息,请参阅 https://docs.gitlab.com/user/application_security/sast/report.sast

XML SATE (静态分析工具说明)

包含符合 SATE 规范的静态分析结果的报告;详细信息,请参阅 https://samate.nist.gov/SATE4.htmlreport_sate.xml
XML xUnitxUnit 格式的报告,包含单元测试结果。report_xunit.xml

可以使用 report.file.name 设置自定义报告文件名。