In this chapter:

Overview

Only users with appropriate permissions can edit test configurations. See About Test Configuration Access.

Click on a test configuration in the sidebar to enable editing. Changes affect the test configuration files stored in DTP.

Click on a tab to access a group of related test configuration settings. For additional information about test configuration settings, mouse over an information icon ("i") next to a configuration setting.

General Tab

Click on the General tab to view and edit metadata associated with the configuration.

You can configure the following settings:

  • Update the name of the configuration name.
  • Specify a folder to keep test configurations organized. Enter a name in the Folder field to place the test configuration into the folder. If the name of the folder does not exist, it will be created. Folders containing test configurations can be nested by placing a forward slash (/) between folder names.
  • Choose test configuration accessibility. See About Test Configuration Access.
  • Add or remove tags, which searchable terms attached to the configuration.
  • View the configuration file URL that is consumed by the DTP Engines.
  • View when the test configuration was added or updated.
  • Add an author. The author may be resource for team members who can provide guidance.
  • Add an approver. The approver may be someone who can provide additional information about the test configuration or serve as a quality gate.
  • Add a description to provide additional information about the configuration. Descriptions may help team members understand the goals associated with the test configuration.

Scope Tab

Click the Scope tab to define the range of analysis. You must connect the DTP Engine to source control in order to collect scope information. See Configuring Parasoft Test for All Projects

You can configure the following settings:

  • Set time-based filters at the file or line level to restrict the scope of analysis to a specific date range or period.

  • Specify paths to files to include or exclude from analysis. You can also use regular expressions to programmatically include or exclude files from the analysis.

  • Specify patterns to exclude specific types of files based on content, e.g., auto-generated files.

File filtering takes priority over code block filtering

A potential conflict may occur if you use both filter types at the same time.


  • Limit the scope of analysis to specific authors.


  • Limit the scope of analysis based on file size.


  • Define specific blocks of code to include or exclude from the analysis.

File filtering takes priority over code block filtering

A potential conflict may occur if you use both filter types at the same time.

Static Analysis Tab

Click the Static Analysis tab to enable/disable static and flow analysis. The available options may vary depending on the DTP Engine.

See the specific DTP Engine documentation for additional details.

Advanced Settings

You can configure the following settings:

  • Set an upper limit on the number of violations that can be reported for each rule.
  • Enable/disable suppressions configured on the engine host.
  • Enable the Skip global analysis option to prevent the collection and use of global data (Jtest DTP Engine only) 

Flow Analysis Advanced Settings

Performance

Expand this section to access options related to depth of analysis and machine performance. By default, flow analysis performs a complete analysis of the scope, which can take considerable time when running on large code bases

  • Choose an option in the Incremental analysis section to run Flow Analysis in incremental mode, which is designed to reduce the time required to run analysis during nightly runs on a single code base that changes from day to day. This option is available for the C++test DTP Engine only 
  • Set the Depth of analysis option to a shallower setting to reduce the amount of time required to run flow analysis. Shallower analysis may result in fewer violations reported.
  • Configure the Strategy for timeouts settings to ensure that flow analysis completes within a reasonable time.
  • Enable the Enable swapping of analysis data to disk option to allow DTP Engines to write the data necessary for analysis to disk. This prevents flow analysis from consuming all available memory when analyzing a large project in which the data represents a semantic model of the analyzed source code.

Verbosity

Expand this section to access options related to how much detail is included in the reporting.

  • Enable the Do not report violations when cause cannot be shown option if you want to exclude violations that lack a cause from being reported. Complete paths from the cause to the point of violation are reported if this option is enabled, but violation causes are not reported for paths that have multiple causes.
  • Violations often share a point of violation, cause, or both. You can enable the Do not report more than one violation per point setting to restrict the number reported violations when the cause or point of violation is shared.

Null-checking methods

The parameterization of Null-checking Methods allows you to specify the expected return value when a null parameter is passed to a method. This reduces false positives and excessive paths that would normally be built when the return value of a null variable is unknown. These settings are not available in the C/C++test DTP Engine.

Terminators

The options in this section allow you to define functions that terminate application execution. These settings are available in the C/C++test DTP Engine only. 

Multi-threading

These settings allow you to define functions for synchronization between threads and activate/deactivate the already listed multi-threading functions. The options specified here affect the rules from the BD.TRS (Threads and Synchronization) category. These settings are available in the C/C++test DTP Engine only. 

Resources

These settings allow you to define which resources should be checked by the resources rules (BD.RES category). These rules verify the correct usage of all resources that are defined and enabled in this tab.

Compiler-specific settings (C/C++ only)

These settings allow you to define advanced compiler-specific arguments.

Inversion of Control Framework Settings (Jtest DTP Engines)

These options allow you to specify annotations used for injecting/initialization values during runtime.

Static Analysis - Rules Tab

Click the Static Analysis - Rules tab to enable/disable the static analysis rules the configuration uses. This page shows all the rules supported by the selected DTP Engine. You can customize rule properties, such as severity and category, from this page. See Customizing Rule Properties for details.

You can perform the following actions:

  • Enable the Show Enabled Only option to only show the enabled rules.
  • Click the Enable [number] of rule(s) or Disable [number] of rule(s) button to quickly enable or disable all rules in the configuration.
  • Click on a rule to view its documentation in the rule preview panel.
  • If the rule can be configured, parameters can be set in the rule options panel.

Metrics Tab

Click the Metrics tab to enable/disable the metrics collected and calculated during analysis.

You can perform the following actions:

  • Enter a metric ID in the search field to locate a specific metric.
  • Enable the Show Enabled Only option to filter by enabled metrics.
  • Click Enable [n] metric(s) or Disable [n] metric(s) to enable or disable all metrics in the test configuration.
  • Enable/disable individual metrics.
  • Enable the Report static analysis violation when outside of acceptable ranges option to configure an upper and lower threshold for the metric. A flag icon will appear in the Enabled column if this option is enabled.
  • Click on a metric to view the documentation.

Unit Tests/Runtime Tab

Click the Unit Tests or Runtime tab to access controls for unit test execution and coverage data collection.

You can enable/disable the collection of unit test results and coverage analysis.

 

 

  • No labels