This release includes the following enhancements:

Release date: November 8, 2023

OpenAI Integration

  • Parasoft Jtest introduces seamless integration with OpenAI and Azure OpenAI, enhancing its testing capabilities. You can now utilize your OpenAI or Azure OpenAI account to generate recommended fixes for static analysis violations and improvements for unit tests using natural-language instructions. These features enable you to efficiently resolve static analysis violations or customize your test scenarios according to your requirements.
  • The Generate Suggested fix for... action in the IDE uses generative AI to provide analysis of a reported static analysis violation in the context of the associated code as well as an AI-generated suggested fix to resolve the violation. For details, see Generating a Suggested Fix.
  • The Improve [method_name] with AI action available in the Unit Test Assistant view allows you to request your OpenAI provider to generate updates or enhancements for a selected test based on user-provided natural language instructions. For details, see Improving Tests with AI.
  • To use this functionality, OpenAI must first be configured in the Parasoft Preferences. See Configuring LLM Provider Settings.

Unit Test Assistant Enhancements

  • Test case creation has been improved, with better consideration of boundary conditions.
  • Support for primitive type arrays initialization and Optional class method calls has been improved.

Code Coverage Enhancements

  • Test impact analysis workflows now support using a baseline report where metadata about lines of code that can be covered was collected during the build process. Previously, test impact analysis workflows only supported using a baseline report where this metadata was collected by scanning application binaries.

New and Updated Test Configurations

The Security Compliance Pack has been extended by adding support for the following test configurations:

  • CWE 4.13
  • CWE Top 25 2023
  • CWE Top 25 + On the Cusp 2023
  • OWASP API Security Top 10-2023

The following test configurations have been updated:

  • DISA-ASD-STIG
  • Thread Safe Programming
  • UL 2900

The following test configurations have been removed:

  • CWE 4.10
  • CWE Top 25 + On the Cusp 2021
  • CWE Top 25 2021

Updated Static Analysis Rules

The following rules have been updated:

Rule ID

Updates

SECURITY.WSC.AMABetter support for Cloneable interface and clone method.
STRUTS.FWDAdditional error messages for missing path attribute cases.
TRS.CIETFixed the parameter "Allow logging without rethrowing or resetting status". 
UC.UPAdditional "Check lambda expressions" parameter, disabled by default.

The performance of the following RuleWizard rules and their compatibility with Java 17 syntax has been improved:

  • CODSTA.BP.AULS
  • CODSTA.OIM.CLONE
  • CODSTA.OIM.CLONET
  • EJB.LNL
  • EJB.USF
  • EXCEPT.AIOC
  • EXCEPT.MTE
  • EXCEPT.NCERR
  • EXCEPT.TEFEC
  • EXCEPT.TRY
  • HIBERNATE.UNP
  • OOP.PIFC
  • PB.API.NDC
  • PB.USC.RTE
  • PORT.LNSP
  • PORT.PEER
  • SECURITY.BV.DSSM
  • SECURITY.WSC.DCSM
  • SECURITY.WSC.UMAIN
  • TRS.AUTY
  • TRS.NSM
  • TRS.SOUF
  • UC.AUL
  • UC.BCMP
  • UC.DIL
  • UC.FMFC
  • UC.VR

Updated Flow Analysis Rules

The following rule has been updated:

Rule ID

Updates

BD-PB-VOVR

Added a parameter to allow reporting on unused values assigned to function parameters.

Added a parameter to allow reporting on unused and overwritten initial values of function parameters.

Support for IDEs

The following IDEs are now supported:

  • IntelliJ 2023.2
  • Eclipse 2023-06 (4.28)
  • Eclipse 2023-09 (4.29)

Additional Updates

  • Support for the Mac Silicon chip (M1/M2) has been added.
  • Support for multiple windows in IntelliJ has been added.
  • Improved look and feel when using the IntelliJ new UI mode first introduced as a beta feature in IntelliJ 2022.3 and as a full feature in IntelliJ 2023.2.
  • You can now configure Jtest so that it runs in a FIPS-compliant mode. See Configuring FIPS Mode.
  • The shipped JRE has been upgraded to version 11.0.21.
  • Visual Studio Code users can now configure the mapping of Jtest severity levels (1-5) to VS Code severity levels (Error/Warning/Information/Hint) and filter the violations inside VS Code based on Jtest severities using a text pattern.
  • It is now possible to suppress a finding in the next line. See Next Line Suppression.
  • Support for Gradle 8.x has been added.
  • Support for Lombok 1.18.28 and 1.18.30 has been added.
  • It is now possible to automatically remove jtestcli and the JRE included with Jtest from quarantine to allow their execution on Mac OS. See How to remove jtestcli and JRE from quarantine to allow their execution on Mac OS?.

Resolved Bugs and FRs

Bug/FR ID

Description

FA-9553BD.PB.ARRAY violation not found inside loop of array of unknown size
FA-9599Improve BD-PB-CC rule so it cannot throw exceptions described when post-processing violations
FA-9642Inaccurate fact deduction based on the complex arithmetic made on variables (e.g. 2 * x - x - x)
FA-9665BD-PB-CC false positive
JT-75551SECURITY.WSC.AMA rule query 
JT-75562Jtest Coverage Agent issue
JT-75581False positive for STRUTS.FWD rule
UTA-7963

Track and make assertions generates the wrong expected value

UTA-8055Do not generate tests with RuntimeExceptions as expected when the exception was not explicitly thrown
UTA-8151[ IJ ] Missing dependency popup appears for cases with nested modules
UTA-8166Wrong number of file selection in bulk creation dialog
UTA-8244Bulk creation dialog blocks creation even if user has enough tokens
UTA-8294Extra test generated which does not add coverage
XT-41250Removed support for NetworkId and licenses based on network identifier
XT-41333Empty file in report is marked as not checked but was tested
XT-41729Incorrectly generated PDF reports from CLI in Japanese env

Deprecated Rules

Deprecated Rule

Suggested Rule

BD-PB-POVRBD-PB-VOVR

  • No labels