Release date: May 9, 2023


Upgrade Note

Users who are upgrading should upgrade CTP and all SOAtest and Virtualize servers and desktop installations to 2023.1 at the same time to avoid version incompatibility issues. Any Test Suite (.tst), Responder Suite (.pva), Action Suite (.pvn), Message Proxy (.pmpdd), or Virtual Asset (.pvadd) created or edited in 2023.1 cannot be opened in older versions of SOAtest or Virtualize.

Application Coverage Improvements

Collect Application Coverage without Access to Source Code

SOAtest users can now measure and collect code coverage statistics for their application even when they do not have access to the source code. You can analyze your application binaries and capture runtime coverage during test execution using SOAtest's coverage tools and agents. You can then view coverage results in Parasoft DTP's reporting and analytics dashboard. For more information, see Application Coverage.

Collect Application Coverage for Multiple Backend Services

SOAtest users can now measure and collect code coverage statistics for multiple backend applications and services as their end-to-end functional test scenarios execute. You can configure SOAtest to connect to multiple coverage agents configured against multiple services as tests are executed. See Application Coverage for more details.

Improved Application Coverage and Test Impact Analysis Workflows

Application coverage and test impact analysis workflows have been simplified and enhanced. In previous product versions, users needed to configure application coverage and test impact analysis settings in a SOAtest test configuration. Additionally, users also needed to configure SOAtest preferences to refer to separately installed and licensed Parasoft Jtest or Parasoft dotTEST installations. In this release, you will now configure application coverage and test impact analysis settings in SOAtest properties files and can now perform coverage workflows with SOAtest's built-in coverage tools and agents, without requiring a separate Jtest or dotTEST licensed installation. Lastly, a new -impactedTests CLI argument has been added to replace separate scripts that previously were included in the SOAtest installation and were needed for test impact analysis workflows.

Migration Details

Users who are using application coverage and test impact analysis workflows will need to migrate their workflows to use the updated configuration options. Three areas are affected: coverage settings in test configurations, SOAtest Preferences, and Test Impact Analysis.

In addition, coverage reports produced by SOAtest 2023.1 that are uploaded to DTP need to be sent to DTP 2023.1. Earlier versions of DTP will not properly process coverage reports produced by SOAtest 2023.1.

Test Coverage

Application coverage settings that were previously configured in the test configuration are now configured in your SOAtest settings file (see Configuring Settings for more details). The table below shows migration details for this shift.

Old Test Configuration UI SettingOld Test Configuration File SettingNew Settings Property

Execution > Application Coverage tab: "Collect application coverage"

com.parasoft.xtest.execution.api.web.collect_application_coverage application.coverage.enabled

Execution > Application Coverage tab: "Coverage agent host", "Coverage agent port" and "Coverage agent protocol"

com.parasoft.xtest.execution.api.web.application_coverage_host
com.parasoft.xtest.execution.api.web.application_coverage_port
com.parasoft.xtest.execution.api.web.application_coverage_protocol 
application.coverage.agent.url

Execution > Application Coverage tab: "Coverage agent user ID"

com.parasoft.xtest.execution.api.web.application_coverage_user_id application.coverage.user.id

Execution > Application Coverage tab: "Report coverage agent connection failures as test failures"

com.parasoft.xtest.execution.api.web.application_coverage_report_as_test_failure Not Applicable, always enabled

Execution > Application Coverage tab: "Upload coverage report to DTP" option

com.parasoft.xtest.execution.api.web.application_coverage_upload_to_dtp application.coverage.agent.dtp.publish

Execution > Application Coverage tab: "Static coverage file location"

com.parasoft.xtest.execution.api.web.application_coverage_static_coverage_file application.coverage.static.file

Execution > Application Coverage tab: "Coverage image tags"

com.parasoft.xtest.execution.api.web.application_coverage_image_tagsapplication.coverage.images

Execution > Application Coverage tab: "Generate baseline coverage report for test impact analysis", "Report location"

com.parasoft.xtest.execution.api.web.application_coverage_tia_generate_baseline_report 
com.parasoft.xtest.execution.api.web.application_coverage_tia_report_location 
Not Applicable, replaced with -impactedTests CLI argument

Execution > Application Coverage tab: "Application binaries location"

com.parasoft.xtest.execution.api.web.application_coverage_tia_application_location application.coverage.binaries

SOAtest Preferences

Application coverage no longer requires a separate Jtest or dotTEST licensed installation, so you no longer need to set the path to Jtest or dotTEST in SOAtest preferences. Coverage is now automatically collected, and reports are generated, when running soatestcli. SOAtest also now contains coverage tools that enable customized workflows.

Test Impact Analysis

Users previously used scripts in the test_impact_analysis folder in the SOAtest installation to create baseline coverage reports, analyze application binraries, and calculate the set of impacted tests to run. They then passed an .lst file containing the list of impacted tests generated by the scripts to soatestcli. Now, you can create the baseline coverage report and run impacted tests using soatestcli and analyze application binaries using SOAtest's coverage tools. For more information, see Test Impact Analysis.

New Responder Mode Driven by Directory of Request and Response Files

Virtualize users can now take advantage of the new Request/Response Files input mode for JSON and Plain XML that makes use of a directory of request/response pairs. This mode checks incoming requests against the files in the directory and, when a match is found, uses the paired response as the reply. This mode will match incoming messages to request files and then return the paired response and can make it easier to add new data since correlations are automatically configured for any new request files based on the tool’s configuration. HTTP, MQ, JMS, and custom protocols are supported. For more information, see Request/Response FilesJSON Files Responder, and Plain XML Files Responder.

Author Stored for Message Proxies, Virtual Assets, and Test, Responder, and Action Suites

The last user to modify a Test Suite (.tst), Responder Suite (.pva), Action Suite (.pvn), Message Proxy (.pmpdd), or Virtual Asset (.pvadd) is now stored in those artifacts. You can see who the last person was to make modifications in the desktop application or in CTP. To make full use of this capability, update CTP and all SOAtest and Virtualize servers and desktop installations to 2023.1.

Breaking Changes

  • Any Test Suite (.tst), Responder Suite (.pva), Action Suite (.pvn), Message Proxy (.pmpdd), or Virtual Asset (.pvadd) created or edited in 2023.1 cannot be opened in older versions of SOAtest or Virtualize. To avoid this issue, upgrade CTP and all SOAtest and Virtualize servers and desktop installations to 2023.1.

Additional Updates

  • Improved look and feel when running in dark theme. Users installing the plug-in for Eclipse should have Eclipse 2022-03 (version 4.23) or later for the best dark theme experience. Affects SOAtest and Virtualize users only.
  • You can configure a Message Responder to bypass any Message Proxy failover settings that have been set up and return the custom return status and payload configured in the Responder instead when you want the responder to return a failure message but don't want the proxy to failover.
  • In the Virtualize Server Hit Statistics report available in CTP, you can control whether hit count, peak hits per second, or both (default) are shown on the chart. See Monitoring Virtualize Server Usage Statistics for more information.

  • You can now create and manage Database Correlation data sources (introduced for Virtualize in 2022.2) from CTP. See Parameterizing with Data Source and Data Bank Values for more information.

  • You can now connect to a MongoDB server or service that you have set up as a Data Repository using a MonogDB connection string instead of only using the host and port.
  • Virtualize Free Edition is now limited to 1000 hits per day.
  • Support for deploying a SOAVirt Server in Kubernetes has been enhanced. You can also now deploy data repository servers in Kubernetes. See Deploying in Docker and Kubernetes for more details.
  • You can install a Windows Service for SOAVirt Server. See Installation: Windows for more information.
  • The SOAVirt Server WAR deployment now includes a script for encoding passwords. See Licensing the Server and Server Configuration for more information.
  • The SOAVirt Server WAR deployment can now run up to four test jobs in parallel. Note this update does not apply to the SOAtest and/or Virtualize desktop application, which runs tests consecutively. CTP users will need to upgrade their CTP installations to take advantage of this increased capacity.

  • Enhanced XML encoding options in Form XML make it easier to switch between Form XML and Literal views while preserving Unicode characters and XML encoding configuration. See Form XML for more details.
  • IBM WebSphere MQ tool can now be configured to keep the connection to the queue manager alive, which allows the use of an MQ browse cursor across subsequent tests. See IBM WebSphere MQ for more information.

  • Desktop users can now access the REST API locally using any valid license, allowing you to test integrations with the REST API and validating workflows locally before deploying completed assets to a remote server.
  • CTP users can mark some servers as "private," hiding them from non-administrators who have not been granted access to them. See Resource Permissions for more details.

  • CTP users can switch message proxy mode between primary and secondary connections.
  • CTP users can create proxies inside of proxy folders.
  • New CTP widgets are available for monitoring Hits per Second on the Virtualize server. See Customizing Your Workspace for more information.

  • CTP users can configure Tomcat to log user information along with each request and response. See Installing Apache Tomcat for more information.

  • You can connect CTP component instances to application coverage agents as part of the Parasoft Application Coverage solution. After doing so, notifications regarding coverage agent connectivity will be displayed on the environment diagram in CTP. See Connecting CTP to Coverage Agents for more information.

  • 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 before upgrading DTP to version 2023.1 or later. See Migrating Team Server Information to a Shared Location for more information.
  • Support for JBoss monitors (used in Load Testis deprecated and will end in a future release.

  • Support for Windows Server 2019 has ended.
  • Addressed Apache ActiveMQ (CVE-2023-46604) and Apache Tomcat (CVE-2023-42794) vulnerabilities in version 2023.1.2.

Resolved PRs and FRs

IDDescription
CTP-6308Ability to utilize proxy folders from the component view
CTP-8223Increase column and box width for more visible text
CTP-8230CTP attempts to create a new test step during test execution
CTP-8541Configuration option to easily enable debug logging
PT-1350 license.wait.for.tokens.time not waiting when Command Line feature not found 
PT-1727"Start deactivated, release automatically when idle" not working  
SOA-6016Form XML - add "XML Encoding" option
SOA-6035Choice Elements not appearing
SOA-15245Include coverage.xml in same directory as report.xml
SOA-15284Report incorrectly shows test passing when pen test fails and report traffic for all tests is enabled
SOA-15526Traffic Does Not Show in Report When XML Data Bank Extracts Empty Element From DB Tool
SOA-15686Attachment Handler prevents "action" parameter from being added to the Content-Type header (SOAP 1.2)
SOA-15802FTP Client - java.lang.NoClassDefFoundError: javax/crypto/interfaces/DHPublicKey
SOA-15885Improve Preferences documentation to be searchable on "bak"
SOA-15922Subsequent calls of MQGMO_BROWSE_NEXT option from Call Back Tool always return first message in the queue
SOA-15992Errors are being reported when opening Web Functional Tests recordings in SOAtest
SOA-16042Provide steps for installation and required changes after installation in multi-user environment
VIRT-6451XML databank works differently if internal route has been used
VIRT-6400'Generate Data Source' Action Does Not Apply Correct DS When Multiple Already Exist in Suite
VIRT-6396Populate with exclude saving issues
VIRT-6237Internally routed request from SOAP 1.1 Client is missing SOAPAction header
VIRT-6196Generate CSV creates one column for all attributes
VIRT-6185Multiple responses noisy error logging on url path index
VIRT-6151Worker Connections Not Decreasing On MQ
VIRT-6146Virtualize message proxy is sending form-url encoded PUT incorrectly
VIRT-6120Empty column causing entire array to be excluded
VIRT-6116Data Source Exclude with empty string option not available for first row
VIRT-6051Kafka Listener throws Exceptions when using xerial snappy compression
VIRT-5930WAR Deployment - Add Password Masking Script
VIRT-5780DB Tool and Database Data Source import does not decode password
  • No labels