This release includes the following enhancements:
Release date: May 16, 2023
Support for Visual Studio Code
You can now leverage Jtest's static analysis and coverage display capabilities in Visual Studio Code IDE. Jtest ships with an extension for Visual Studio Code, which allows you to run static code analysis, integrate with DTP to publish and download static analysis results, review the code coverage results directly in the IDE, and more. See Extension for Visual Studio Code for details.
The Jtest extension for Visual Studio Code is available at the Visual Studio Code Marketplace. Visit https://marketplace.visualstudio.com/vscode for the most recent updates.
Code Coverage Enhancements
- Jtest includes a new standalone coverage tool (jtestcov) with extended capabilities for creating coverage reports that can be easily incorporated into different testing flows.
- QA teams can now measure code coverage for their applications without needing access to source code. jtestcov can be used to scan application binaries and create a report containing the scope of testable code in the application, as well as create reports containing the runtime coverage data collected by the Jtest coverage agent. These reports can be uploaded to Parasoft DTP, which aggregates the coverage data to provide a comprehensive overview of your application’s coverage metrics.
- Teams can use the test impact analysis capability of jtestcov to calculate the specific set of tests that they must run to validate just the code that changed in a new version of their application.
- jtestcov enables simplified coverage workflows. Runtime coverage reports can now be created and uploaded to Parasoft DTP independently of the static coverage file produced by analyzing source code (see Generating the Monitor Package). Additional configuration and usability enhancements simplify workflows for setting up coverage and test impact analysis configuration for applications.
- For additional details about the new capabilities and jtestcov usage, see Application Coverage.
Unit Test Assistant Enhancements
- Automatic generation of unit tests inside the IDE based on latest code changes has been introduced. You can now easily create tests for just the changed code. When you select a project or package, Jtest automatically detects the changed classes and generates relevant tests.
- The Impacted Unit Tests view has been enhanced: an icon has been added to indicate that a test is new, and all new tests which are added locally are displayed in the view, regardless of whether coverage data is present. See Test Impact Analysis.
- Support for Mockito 4.11 has been added.
New and Updated Test Configurations
The Security Compliance Pack has been extended by adding support for the following test configurations:
- CWE 4.10
- OWASP ASVS 4.0.3
The following test configurations have been updated:
- CWE Top 25 + On the Cusp 2022
- UL 2900
- HIPAA
- Recommended Rules
- Flow Analysis Fast
- Flow Analysis Standard
- Flow Analysis Aggressive
Updated Static Analysis Rules
The following rule has been updated:
Rule ID | Updates |
---|---|
SECURITY.IBA.CDBV | Canonicalize data before validation |
New and Updated Flow Analysis Rules
The following rules have been added:
Rule ID | Header |
---|---|
BD.PB.INTDL | Avoid data loss when converting between integer types |
BD.PB.INTVC | Avoid value change when converting between integer types |
BD.PB.INTWRAP | Avoid wraparounds when performing arithmetic integer operations |
BD.PB.UGHC | Do not base the equality of objects on the equality of hash codes |
The following rules have been updated:
Rule ID | Updates |
---|---|
BD.PB.EXCEPT | Improved accuracy and performance of the rule. |
BD.SECURITY.SENSLOG | Improved performance of the rule. |
Support for IDEs
The following IDEs are now supported:
- IntelliJ 2022.3
- IntelliJ 2023.1
- Eclipse 2022-12 (4.26)
- Eclipse 2023-03 (4.27)
- Visual Studio Code
Additional Updates
- The Change Based Testing licensed feature has been renamed to Test Impact Analysis. Ensure the correct feature name is listed in your License settings; see jtest.license.custom_edition_features.
- Support for default parameters of cloned and mapped rules defined in rulemap.xml has been added. The values are visible in the Test Configuration Editor in the IDE.
- Support for Gradle 7.6 has been added.
- Support for Maven 3.9.x has been added.
- Support for Lombok 1.18.24 and 1.18.26 has been added.
- Optimized execution time of rules in Compliance Packs and cloned rules.
- Improved look and feel when running in dark theme.
Removed Support
Removed Support for Team Server
Team Server has been removed and is no longer supported. If your team configurations, rules, and rule mappings are still stored in DTP Team Server, migrate them to a shared location. See Migrating Test Configurations, Rules and Rule Mappings from the Team Server to a Shared Location.
Removed Support for Platforms
Support for the following platform is now removed:
- Windows Server 2019
Deprecated Rules
Deprecated Rule | Suggested Rule |
---|---|
BD.PB.INTOVERF | BD.PB.INTWRAP, BD.PB.INTDL and BD.PB.INTVC |
Resolved Bugs and FRs
Bug/FR ID | Description |
---|---|
FA-9261 | BD.PB.CC false negative when checking out-of-range value for equality |
JT-74867 | Gradle Issue: Could not find method jtest() |
XT-40583 | Cut-off console output in IntelliJ |
XT-40717 | The same suppressions reason reported for all comment suppressions in single line |
XT-40748 | Incorrect behavior of "wait for tokens" option |
XT-40970 | Applying OIDC settings does not force authentication when refresh token is invalid |
XT-41092 | Relative paths to rule links are resolved to absolute making reports and rule docs non-portable |
XT-41141 | UUIApplication.get().getSelection() returns incorrect data in IntelliJ |
Known Issues
The following performance issues may occur for very large files (a few thousand lines of code or more) when using UTA with IntelliJ 2023.1:
- IntelliJ may appear to freeze after creating assertions from the variables view.
- A delay may occur when applying the Uncomment quick fix to a JUnit5 test.