Validate integration with Helix QAC
Helix QAC is a Perforce static code analysis product with a main focus on functional safety and standards compliance.
You can import a Helix QAC project containing QAC analysis results into Validate with a similar level of administration and issue browsing capabilities. However, project configuration, build synchronization and analysis need to be managed using standard Helix QAC tools. You can use the Validate tools for viewing results, setting up email notifications, managing the web API, and generating reports, in collaboration with the existing tools from the Helix QAC tool chain.
- An installation of Helix QAC is required on the import machine, even if QAC analysis is done on a different machine.
- In order to perform QAC analysis and enable importing issues from QAC, you need an up to date QAC license. Please contact Perforce support for details on Validate and QAC licensing.
A typical integrated workflow can be as follows:
- Set up and synchronize your Helix QAC project, and run QAC analysis using standard Helix QAC command line or GUI tools.
- Create a new project on the Validate server (using the portal or 'kwadmin create-project'). You will require the proper permissions in Validate to complete this step.
- In the Helix QAC tools (in the GUI or via the command line), specify a target project to upload results to.
- Load the resulting tables into Validate using kwadmin load.
Note that the following section is only applicable if you are running both Klocwork and Helix QAC analysis in parallel.
Aside from defect reports, the Klocwork engine produces code browsing information and metrics, both of which can significantly improve your experience working with the projects loaded in Validate. Code browsing information allows you to jump between entity declarations and their definitions, function callers and callees. Metrics provide information about your source code like lines of codes, complexity and coupling.
While Helix QAC does support metrics and some entity relations, this information is not currently available in the portal from the QAC engine alone. If you are not interested in seeing Klocwork defects, but still want to use the auxiliary information from the Klocwork engine, simply disable all Klocwork checkers and use the --classic
switch for kwbuildproject in hybrid mode. This will ensure a minimal performance impact of Klocwork native analysis.
Validate supports integration with Helix QAC product under certain limitations:
- Validate 2022.3 is compatible with Helix QAC 2022.3. Previous versions of Helix QAC are not supported.
- Only single configuration Helix QAC projects are currently supported.
- You can view QAC defects configuration in Validate, but they are read only.
- Defect status changes (diagnostic suppressions) in portal cannot be applied back to the Helix QAC project.
- Metrics and code browsing information require Klocwork analysis to be run.