Parasoft Findings plugin and DTP
About DTP
DTP is a Centralized Reporting Dashboard that can display back the results received from the Parasoft tools and provide advance analytics to verify quality in your application. It provides Widgets to be placed on a personalized dashboard that show a piece of the applications quality to help the user see what actions need to be taken to ensure quality is met on time. You can drill down into these widgets information to see more contextual information reported to make the best decision possible.
DTP offers an API to be able to display the results published to the server. These results can then be consumed and utilized however the user wants to consume the data. These APIs respond with the data that is has processed from the Data Collector so it can properly respond with the correct data from the API Request. The time it takes the Data Collector to process the data varies on the size of report file published. The larger the file, the more time it will take to process this. It is expected for Users to log into DTP to then review the published data and begin to manage the results in the workflow that suits best for them.
About DTP API’s Usecases
The API is meant to be used as another way to provide the published data to consume into a user’s workflow or triage process. It can return the results after the Data Collector has processed the reports, thereby allowing the user to customize the data and manipulate it to what they need. Because the API relies on the Data Collector to finish processing the reports, there will be a delayed in receiving the just published results. Therefore, the API should not be used for immediate trigger for action or immediate workflow process. Some time is required for the Data Collector to finish processing the reports for the results to be shown and accessible.
Recommend Ci/CD Workflow with Parasoft Findings
For CI/CD workflow pipelines, the results of the tests or build will be published to DTP so those results can be viewed there. Parasoft also provides a plugin called the “Parasoft Findings Plugin” that can consume the reports generated from the Parasoft tools and can get the build based on the results from here. Parasoft Findings: Integrate and visualize test results generated by Parasoft products.
* For Bamboo
* For JetBrains TeamCity
* For Jenkins
* For Microsoft Azure DevOps(VSTS)
The plugin can then be configured to mark the build as Passing, Unstable, or Failed based on the reports results and thresholds set in the plugin. This plugin provides insight to the reported results as well but does not have the same level of reporting features than what you would find on DTP. In addition, the results can not be manipulated or triaged from the “Parasoft Findings Plugin” and can only be viewed.
How to install the Jenkins Findings plugin
- Go to "Manage Jenkins -> Manage Plugins
- Go to "Available" Tab and search "Parasoft Findings" and click install
- Once it is installed go to the Jenkins Job and add it to the Post Build section with the "Record compiler warnings and static analysis results" and select "Parasoft findings"
Configuring Gates for the plugin
- In the “Record compiler warnings and static analysis results” click on the “Advanced” button at the bottom.
- Once that opens up, scroll down to the Quality Gates section.
- Click on the “Add Quality Gate” button and choose the type of gate you want to add and apply the threshold you want to set for.
- Add as many gates are you need to correctly mark the Build Status based on the results of that analysis. Once you have finished, click on “Apply” and “Save” buttons to make the changed permanent.
Configuring Gates for plugin with Pipeline
In the pipeline section create or append to the "Post" section the following:
post {
always {
recordIssues(
//recordIssues enabledForFailure: true,
aggregatingResults: false,
tool: parasoftFindings(
pattern: '**/*.xml',
localSettingsPath: '',
type: "Total (any severity)",
threshold: ""
)
)} }
In the "Type" section add the severity rating you want to gate for in your build.
Data Collector processing
There is a widget in DTP under the “Diagnostic” category called “Data Collector Diagnostics” that will display the status of the report in the Data Collector.
If a report is published for the selected project in the filter, it will display the status of the report. You can refresh the widget to update the status of the report in the Data Collector:
The report can have 3 statuses:
1. Processing
2. Processed
3. Error
“Processing” means the Data Collector is still parsing the data into the Database and is not ready for access, yet which means more time is required for it to finished processing. “Processed” means the Data Collector was successful in finishing parsing the report data and is now accessible to be shown on a Dashboard or called from the API. “Error” means an error had occur with parsing the report; you can click on the error status in the widget and drill down to see what the cause was and provide that information to the Parasoft Support team to investigate.