Testing for Regressions: Recommended
- Use thecommand (or the GUI) to check for new problems:inspxe-cl
Create a Result
- You may haveData raceproblem caused by more than one thread accessing a variable without synchronization; however, you know there are other timing factors that make it impossible for theData raceto occur.
- You may have an issue in a third-party library that is of no interest to you.
Create a Suppression File
$ inspxe-cl -create-suppression-file mySup -result-dir r002ti2
Change Your Source Code
- Intel Inspectoridentifies source code lines relative to the start of a function, not as absolute values. So you can insert and delete lines of code anywhere in source files without rendering a suppression file ineffective except inside a function where a problem is marked for suppression.
- Adding or deleting lines in a function prior to the location of a suppressed problem causes a problem to no longer match the suppression rule. Therefore the problem appears as a new problem in subsequent analysis runs.
Run a New Analysis
$ inspxe-cl -collect ti2 -suppression-file "C:\My Inspector Results\suppressions" -- myApp
Determine if the Changed Source Code Introduced New
- In thecommand tool: Check the automatically generatedinspxe-clinspxe-cl.txtSummary report.
- In the GUI: Check theProblemspane.
Automate Your Regression Testing Process
- Set up thecommand environment.inspxe-cl
- Invoke thecommand to run an analysis and apply the suppress-all file(s).inspxe-cl
- Determine if the changed source code introduced new problems by checking the returned exit code in the automatically generatedinspxe-cl.txtSummary report when analysis is complete. If the reported exit code equals 0, there are no new problems detected in unsuppressed code locations. If the reported exit code does not equal 0, consider sending the Summary report to a log file and email the log file to an engineer for further triage.
- Repeat steps 2 and 3 as necessary.