This topic defines the variables that can be used in C/C++test.
General Variables
The following variables can be used for general purposes, for example, to configure report, e-mail, Parasoft DTP, or license settings. The session tag value must not contain any ':' characters.
analysis_type
$ example: ${analysis_type}
Outputs a comma separated list of enabled analysis types (for example: Static, Generation, Execution). This variable can only be used in report and email settings.
config_name
$ example: ${config_name}
Outputs the name of executed test configuration. This variable can only be used in report and email settings. For example:
dtp_project
example: $dtp_project}
Outputs the name of the project DTP that corresponds with the tested project.
env_var
example: ${env_var:HOME}
Outputs the value of the environmental variable specified after the colon.
general_project
example: ${general_project}
Outputs the name of the DTP general project that results are linked to.
project_name
example: ${project_name}
Outputs the name of the tested project. If more than one project is provided as an input, it first outputs the tested project name, then "...".
project_loc
example: ${project_loc}
Outputs the location of the tested project.
solution_name
example: ${solution_name}
Outputs the name of the tested Visual Studio solution. If more than one solution is provided as an input, it first outputs the tested solution name, then "...".
solution_loc
example: ${solution_loc}
Outputs the location of the tested Visual Studio solution.
time
example: ${time:yyyy-MM-dd-HH.mm}
Outputs the current time. The default is yyyy-MM-dd
. You can customize the format (as in the example above).
tool_name
$ example: ${tool_name}
Outputs the name of the Parasoft product (for example: C/C++test).
workspace_name
example: ${workspace_name}Outputs the Visual Studio solution name. For example, report.mail.subject=Scanner Results for ${workspace_name}
may evaluate to "Scanner Results for solutionAccoun1.sln".
resource_loc
example: ${resource_loc:<RESOURCE_PATH>}
Outputs the location of the specified project resource. This variable can be used to reference a project resource in any applicable settings, such as the make run directory for projects with linked directories, or the path to a .dsp file for VC6 projects, or similar. Specify logical paths relative the project as it is registered in the workspace.
Build-related Variables
${CPPTEST_SCAN}
This variable is automatically initialized to the C/C++test options extractor utility with options; set in the environment when C/C++test runs the Build command. Used in the Build command line when configuring a Makefile-based project (Project> Properties> Parasoft>C++test> Build options). The variable can be used directly in Makefiles and build scripts to replace the compiler/linker (when make or build scripts are run by C/C++test).
${cpptest:original_options}
Options from original (tested) project collected from monitoring the build or reading project files (Visual Studio or MULTI). Used in compiler / linker options in project / file properties.
${cpptest:project_lib_files}
Dependent libraries collected from the Visual Studio project/solution definition. Used in compiler / linker options in project / file properties.
Variables for Test Suite Files
You can use the following variables to configure the Test suite output file and layout option in the Test Configuration’s Generation> Test suite tab:
- ${test_ext} - C/C++test specific extension of a test suite file (.cpp).
- ${file_name} - File name.
- ${file_base_name} - File name without extension.
- ${file_ext} - File extension.
- ${file_loc} - File location.
- ${file_loc_rel} - File location relative to the project root.
- ${file_uid} - File unique identifier.
- ${function_name} - Tested function name.
- ${function_uid} - Tested function unique identifier (hash-code computed from the function signature/mangled name).
Other Variables
For Temporary Files
${cpptest:testware_loc} - C/C++test temporary files location. Used in:
- Test exec working directory
- Flow recipe XML
For Configuration Files
${cpptest:cfg_dir} - C/C++test configuration files location. Used in:
- Flow recipe XML
- Stub file locations
- Compiler / linker options in project / file properties
For Automatically-Generated Stubs
${cpptest:auto-stubs} - Auto-generated stub files location. This variable points to the value set in the Test Configuration’s Auto-generated stubs> Output location, as shown in the screen shot below. This is basically a shortcut that synchronizes the directory where the stubs are generated and where they are picked up from.
Used in:
- Stub file locations-- only for Test Configurations that generate stubs.
For Context-Specific Stubs
- ${ctx_name} - Name of the tested context file; e.g. 'foo.cpp'
- ${ctx_base_name} - Base name of the tested context file; e.g. 'foo'
- ${ctx_ext} - Extension of the tested context file; e.g. 'cpp'
- ${ctx_loc_rel} - Project-dependent location of the tested context file; e.g. 'src/subdir'
Used in:
- Stub file location ('Use symbols from additional project files') and auto-generated stub location ('Autogenerated stubs output location') for File-Scope Test Configurations.