Squish Coco

Code Coverage Measurement for C/C++

  Software Packages

Release note of Squish Coco v2.1.7
Changes between Squish Coco v2.1.7 and Squish Coco v2.1.6:
CoverageBrowser
  • Change: Navigation buttons are now grouped into one toolbar.
  • Speed improvement of the source code viewer.
  • Speed improvement of the computing of the list of tests which are executing a source line.
  • Speed improvement of the of the text search in the source code function.
  • New Feature: Source code viewer:
    • New Feature: Sources are displayed in a tabbed view.
    • New Feature: Preview of the instrumentation of a whole file into the scroll bar.
    • New Feature: Tooltip which displays the detail of an explanation of a source line.
    • New Feature: More intuitive text search function (search when typing into the source code window) and interactive highlighting of the matched patterns.
    • New Feature: Dock/undock line number column and statistic column.
CoverageScanner
  • Bug FixCoverageScanner is now able to handle "Whole Program Optimization" (option /GL) and "Use Link Time Code Generation" (option /LTCG) of Microsoft® Visual Studio®.
  • New Feature: Command line option --cs-vs2010-lambda which permits to instrument lambda functions of Microsoft® Visual Studio® 2010
  • New Feature: Support for "for each" C++ syntax extension of Microsoft® Visual Studio®.
  • Bug Fix: Support of ccache wrapper.
  • Bug FixCoverageScanner detects now dead code after a try/catch block.
  • Bug Fix: Precompiled header issues.
  • Bug Fix: Handling source code lines which are ending with a backslash.
cmreport
  • Speed improvement of the generation of EMMA-XML reports.
  • Speed improvement of the generation of HTML reports.
  • New Feature: HTML report displays the detailed instrumentation report in a tooltip.
  • Change: HTML report is generated in a directory whose name ends with _html. This avoids a name clash under Unix where the executable has in most of the cases no extension.
Release note of Squish Coco v2.1.6
Changes between Squish Coco v2.1.6 and Squish Coco v2.1.5:
CoverageBrowser
  • New Feature: Possibility to choose the source code type used for comparing software releases (original source code or preprocessed source code)
CoverageScanner
  • New Feature: New command line options which permits to specify command line arguments into a text file (--cs-option-file).
  • New Feature: New command line options which permits to specify to select directly the CoverageScanner profile (--cs-profile).
cmreport
  • New Feature: possibility to customize the EMMA-XML report
Release note of Squish Coco v2.1.5
Changes between Squish Coco v2.1.5 and Squish Coco v2.1.4:
CoverageScanner
  • New Feature: Support for precompiled headers for Microsoft® Visual Studio® compiler.
  • New Feature: Xoreax IncrediBuild support (http://www.incredibuild.com/incredibuild-product-overview.html)
  • Bug Fix: Wildcard expressions on relative paths are computed on the canonical path. (example: --cs-include-file-wildcard=include/* matches include/foo.h and module/../include/bar.h)
  • New Feature: New command line options which permits to specify which extensions are used for C++ (--cs-cpp-ext) and C (--cs-c-ext) files.
  • New Feature: New command line option which permits to set the tool chain path (--cs-native-toolchain).
  • Change: Verbose command line option (--cs-verbose) permits to select if the build, the instrumentation or the CoverageScanner API is instrumented. The verbose output of the instrumented file is generated into a log file (name of the execution report with the extension.cslog).
  • Bug Fix-m32 and -m64 command line support for GCC.
  • Bug Fix: Compilation issue on Microsoft® Visual Studio® for instrumented C++0x lambda function corrected.
  • Bug Fix: Support of __stdcall as default calling convention when compiling with Microsoft® Visual Studio®.
  • New Feature: New command line option for UNIX® platform which permits to generate a coverage report on the reception of a signal (--cs-dump-on-signal).
  • New Feature: New command line option for Microsoft® Windows platform which permits to generate a coverage report on the reception of an event (--cs-dump-on-event).
  • Change: Instrumentation tables of libraries are chained together during the runtime when compiling with Microsoft® Visual Studio®. The old behaviour can be restored with --cs-link-instrumentation-tables.
cmreport
  • Changecmreport generate now per default a code coverage report at decision/condition level with line coverage for uncovered lines.
Microsoft® Visual Studio® Add-In
  • Change: Microsoft® Visual Studio® Add-In does not disable the precompiled headers anymore.
Release note of Squish Coco v2.1.4
Changes between Squish Coco v2.1.4 and Squish Coco v2.1.3:
CoverageBrowser
  • New Feature: Import summary display the imported execution comment.
  • New Feature: New instrumentation mode available which permits to displays the computed line coverage of uninstrumented lines. This enables the readability of the source code but have no impact on the coverage statistic.
CoverageScanner
  • Bug Fix: Support for /clr:safe and clr:pure command line option.
  • Optimization: CoverageScanner calls now directly the native compiler without calling a second instance of it.
  • Bug Fix: The line coverage was wrongly calculated before some switch/case statements.
License Manager
  • New Feature: The license manager is now a wizard dialog.
  • New Feature: Command line tool to activate a license on Windows and Unix
Release note of Squish Coco v2.1.3
Changes between Squish Coco v2.1.3 and Squish Coco v2.1.2:
CoverageScanner
  • New Feature/MP command line (parallel build) supported for Microsoft® Visual Studio® compiler.
  • Bug Fix: Parsing issues of C++11 templates corrected.
  • New Feature: The Build Environment Selection tool generate CoverageScanner wrapper for CygWin.
Microsoft® Visual Studio® Add-In
  • New Feature: Since that CoverageScanner instruments now all non system folders, the selection dialog of the list of directories to include is removed. A dialog which permits to select the list of directories to exclude replace it.
Linux installer
  • New Feature: Possibility to specify a custom installation directory.
cocolic
  • New Feature: Command line interface on Unix.
  • Bug Fix: More verbose error message in the case of network failures.
Release note of Squish Coco v2.1.2
Changes between Squish Coco v2.1.2 and Squish Coco v2.1.1:
CoverageScanner
  • Bug Fix: Multi line #pragma supported.
  • Bug Fix::new keyword supported.
Microsoft® Visual Studio® Add-In
  • Bug Fix: Support of solutions with folder.
  • Bug Fix: Support of solutions which mix C++ and C# projects.
Release note of Squish Coco v2.1.1
Changes between Squish Coco v2.1.1 and Squish Coco v2.1.0:
CoverageScanner
  • ChangeCoverageScanner instruments now per defaults all sources files except those which are in the system directory (/usr, /opt or C:\Windows) or the application installation directory (C:\Program Files).
  • New Feature: Automatic detection of the runtime library necessary when compiling using Microsoft® Visual Studio®. Adding /MD or /MT to the build command argument of the CoverageScanner library is no more necessary.
  • Bug Fix: Crash when using wildcard expression on file name on UNIX®.
  • New Feature: The instrumentation table are now generated during the runtime. This permits to handle stubs, which overwrite objects from libraries.
  • New Feature: Constructor which use member initialization list are instrumented even if their body is does not contains code.
  • New Feature: C++ CLR language extension of Microsoft® Visual Studio® supported.
CoverageBrowser
  • New Feature: Navigation buttons are disables if they are irrelevant. After reaching the end of search, the navigation buttons start from the beginning again.
  • Bug Fix: Clicking on a function in the method list, show it entirely in the source window.
  • Bug Fix: Statistics count was wrongly computed when the instrumentation is computed with line coverage support and the test count mode was activated.
  • New Feature: Importing an execution report does not generate an error message any more. If some executions cannot be imported, the information window is automatically shown. A list of imported executions and errors are displayed on it.
  • New Feature: Windows x64 package available.
cmreport
  • New Feature: EMMA-XML report generated now condition coverage statistics. This requires Jenkins EMMA-XML plugin version 1.29 or above.
  • New Feature: JUnit report generation.
Release note of Squish Coco v2.1.0
Changes between Squish Coco v2.1.0 and Squish Coco v2.0.3:
Squish Coco
  • New Feature: Recognition of dead code inside a function.
  • New Feature: Function coverage.
  • New Feature: Line coverage.
CoverageScanner
  • Code coverage count is enabled per default.
cmreport
  • Bug Fix: EMMA-XML report corrected: the line field correspond now to the line coverage.
Release note of Squish Coco v2.0.3
Changes between Squish Coco v2.0.2 and Squish Coco v2.0.3:
Squish Coco
  • Bug Fix: License activation issues.
Release note of Squish Coco v2.0.2
Changes between Squish Coco v2.0.1 and Squish Coco v2.0.2:
cmreport
  • Improving the speed of the production of HTML reports through parallelization of the generation of the source code view.
CoverageScanner
  • Bug Fix__try and __finally keyword now handled on Windows for C files.
  • Bug Fix: g++ compiler wrapper treats files with .c extension as C++ files.
  • Bug Fix: On Windows, command line containing directory name which ends with a backslash are now correctly escaped.
  • Bug Fix: ar and ld wrapper are now working, and do not report that the profile cannot be found.
  • New Feature: The code behind the macro BOOST_FOREACH is no more analyzed, unless the command line --cs-no-boost is used.
  • New Feature: New command line option --cs-output-abs.
  • Change: The support for Qt3, Qt4 and Boost is per default activated. Disabling it can be performed using command line switches --cs-no-qt3, --cs-no-qt4 and --cs-no-boost.
  • Change: The full instrumentation at decision and condition level is now the default setting for the instrumentation.
Release note of Squish Coco v2.0.1
Changes between Squish Coco v2.0.0 and Squish Coco v2.0.1:
CoverageScanner
  • Bug Fix: Support setting define which contains escaped quotes per command line (ex: "-DVERSION=\"version 1.1\"")
  • Bug Fix: Compilation issue of TextEdit sample when spaces are in the path corrected.
License Dialog
  • Bug Fix: Retrieving a license key is now interruptible and displays a progress bar.
Release note of Squish Coco v2.0.0

Changes between TestCocoon v1.6 and Squish Coco v2.0.0:

Microsoft® Visual Studio® Add-In
  • New Feature: Support for Microsoft® Visual Studio® 2010.
  • Bug Fix: x64 platform are now recognized and handled.
CoverageBrowser
  • New Feature: Supporting linking several times the same object into an application.
  • New Feature: Possibility to filter out execution which doesn’t cover any code.
  • New Feature: Possibility to filter out source files and functions which are not instrumented.
  • Bug Fix: Calculation of statistics is able to saturate all available CPU.
  • Bug Fix: After opening a new instrumentation database, no executions become selected.
  • New Feature: Possibility to choose between the native file dialog and the dialog provided by Qt.
  • New Feature: Displaying the execution of a reference release into the list of execution. Executions of the reference release are strikeout, new executions are underlined.
  • New Feature: Generation of browsable HTML output.
CoverageScanner
  • Empty functions are no more instrumented.
  • New Feature: C++0x support.
  • New Feature: Verbose output of the CoverageScanner output when using command line option --cs-verbose.
  • New Feature: Saving the contains of a tree view waits until all statistics are computed.
  • New FeatureQ_FOREACH macro es now handled to avoid false negative code coverage statistics. Once a look is executed once, the Q_FOREACH macro is considered as 100% covered.
cmcsexeimport
  • New Feature: Execution comments in HTML form are parsed from the execution report. This permits to add extra log information to the execution report.
cmreport
  • Bug Fix: Correction of an EMMA-XML issue: global statistics are now ordered in EMMA-XML report as following: Line, Method, Class and then Block
  • New Feature: Generation of browsable HTML output.