发布日期:2020 年 4 月 17 日

在此版本中,我们专注于扩展对环境的支持并增强 Jtest 的单元测试功能。

IDE 支持

新增对以下 IDE 的支持:

  • Eclipse 2019-12 (4.14)
  • Eclipse 2020-03 (4.15)
  • IntelliJ IDEA 2019.2
  • IntelliJ IDEA 2019.3

当前不支持 IntelliJ 2020.1。

支持源码控制管理系统

现已支持:

  • Git 1.8、1.9、2.x
  • SVN 1.10、1.11、1.12、1.13
  • Microsoft Team Foundation Server 2017、2018、2019

有关已弃用和已删除的源码控制系统支持的信息,请参阅已弃用的环境和系统支持

平台支持

现已支持:

  • OS X 10.14 Mojave
  • OS X 10.15 Catalina

增强单元测试

单元测试助手功能增强

  • UTA 现在可以执行数据流分析,针对如何覆盖未覆盖代码行提供更加可靠的建议。
  • 现在,您可以在使用 UTA 执行测试时将特定的包和类排除在监控范围外。这有助于避免在测试执行期间超出方法调用的限制。详细信息,请参阅配置首选项

JUnit 5 测试的测试影响分析

扩展对 JUnit 5 框架的支持。现在可以为使用 Maven 或 Gradle 执行的 JUnit 5 测试运行测试影响分析。

JUnit 4 和 5 测试执行性能优化

现在,您可以配置 Jtest 优化测试执行性能。这将大幅减少计算 JUnit 4 和 5 测试的结果和覆盖率数据所需的时间,同时帮助您提高构建系统不同版本之间结果的一致性。详细信息,请参阅运行单元测试

扩展 Security Compliance Pack

Security Pack 现已支持 CWE 4.0。此外,我们通过新增规则和更新现有测试配置,增强对 CWE Top 25 2019 和 On the Cusp 指南的支持。详细信息,请参阅新增和更新的测试配置

新的版本命名约定

现在所有 Parasoft 产品(包括 Jtest)都遵循新的版本控制方案:YYYY.release。 

新增和更新的测试配置

添加一个新的测试配置,帮助您检测通用缺陷对照表(CWE)4.0 中明确的缺陷:

  • CWE 4.0

更新以下测试配置,扩展对安全标准的支持:

  • CWE Top 25 2019
  • ​CWE Top 25 + On the Cusp 2019
  • Flow Analysis Aggressive
  • Flow Analysis Standard
  • OWASP Top 10-2017
  • UL 2900

删除的测试配置

  • CWE 3.4

新增和更新的静态分析规则

添加以下规则:

规则 ID标题
BD.SECURITY.SENSLOG避免将敏感数据传递给写日志文件的函数
BD.SECURITY.TDALLOC在使用潜在可能受污染的数据确定内存分配大小之前对其进行验证
SECURITY.WSC.HTTPRHA不要依赖从 HTTP 请求报文头中获得的 IP 地址进行身份验证
SECURITY.WSC.JXCORS限制跨域资源共享到安全域

更新以下静态分析规则以优化分析结果:

  • BD.EXCEPT.NP

  • BD.PB.STRNULL

  • BD.SECURITY.TDRESP

  • BD.SECURITY.TD*

  • CODSTA.ORG.DINT
  • FORMAT.CBRACE
  • FORMAT.TNL
  • GLOBAL.ACD
  • GLOBAL.DPAC
  • GLOBAL.DPAF
  • GLOBAL.DPAM
  • GLOBAL.DPPC
  • GLOBAL.DPPF
  • GLOBAL.DPPM
  • GLOBAL.SPAC
  • GLOBAL.SPAM
  • GLOBAL.SPPC
  • GLOBAL.SPPM
  • GLOBAL.UPAC
  • GLOBAL.UPAF
  • GLOBAL.UPAM
  • GLOBAL.UPPC
  • GLOBAL.UPPF
  • GLOBAL.UPPM
  • JUNIT.AUL
  • PB.CUB.UEIC
  • PB.USC.NACC
  • SECURITY.IBA.DXXE
  • SECURITY.WSC.DMDS
  • SECURITY.WSC.MCNC
  • SECURITY.WSC.PBFA
  • SERIAL.NSFSC

更新以下规则的输出消息,因此,与这些规则有关的 DTP 抑制可能不再可用:

  • CODSTA.ORG.DINT
  • FORMAT.TNL
  • GLOBAL.ACD
  • PB.USC.NACC
  • SECURITY.WSC.MCNC
  • SECURITY.WSC.PBFA

其他功能增强

  • 新增对 Gradle 6.0 - 6.3 的支持。
  • 优化静态分析性能。Jtest 现在可以更有效地收集和重用项目相关信息,减少作用于全局范围的规则的执行时间。
  • 现在,您可以在配置与 DTP 的连接时指定上下文路径。

弃用的环境和系统支持

弃用对以下环境和系统的支持,并将在以后的版本中删除。

Windows 7

在系统的 EOL 之后,不再支持 Windows 7。

NetBeans

弃用对所有 NetBeans IDE 版本的支持

源码控制管理系统

不再支持以下 SCM:

  • AccuRev
  • ClearCase
  • CVS
  • Serena Dimensions
  • StarTeam
  • Synergy CM
  • Visual Source Safe

此外,已删除对 Microsoft Team Foundation Server 2010 的支持。

Java 6

不再支持 Java 6 及更低版本。因此,将在以后的版本中删除需要 Java 6 或更低版本的支持环境。

解决的 Bug 和 FR

Bug/FR ID说明
JT-72013分析范围为空时的命令行退出码
JT-72015优化全局分析性能
JT-72067PB.CUB.UEIC 误报
JT-72081EVAL - CWE.400.DMDS 结果相关的问题
JT-72105EVAL - CWE.749.DPAM 报告的构造函数违规
JT-72402FORMAT.CBRACE 潜在误报
JT-72541审查与 JUNIT.AUL 和 JUNIT.RPL5 相关的问题
UTA-4268Jtest 无法跟踪关联用例上的模拟对象。
UTA-4377对话框中出现未本地化的“Unable to detect the testing framework”消息。
UTA-4902在非处理方法上生成 Spring 测试时没有执行深度设置
UTA-5056IntelliJ 中克隆方法操作的格式错误且缺少 javadoc。
XT-36582Parasoft 插件在使用 Java 11 运行时,无法与某些版本的 Eclipse 和 NetBeans 一起使用
XT-37673在 IDE 运行的静态分析由于缺少命令行功能退出
XT-37692 IDE 生成的引擎许可证可能会因 Java 或 IKVM 版本的不同而有所差异。


有关此版本的信息,请参阅 https://docs.parasoft.com/display/JTEST20201/Updates+in+2020.1