# Cantata++

Cantata++, commonly referred to as Cantata in newer versions, is a commercial computer program designed for dynamic testing, with a focus on unit testing and integration testing, as well as run time code coverage analysis for C and C++ programs. It is developed and marketed by QA Systems, a multinational company with headquarters in Waiblingen, Germany.

## Overview

Cantata++ was initially developed in 1998 by IPL Information Processing Systems. In 2012, QA Systems GmbH acquired the business and rebranded the tool as Cantata at version 6.2.
Cantata supports use within the Eclipse Integrated Development Environment (IDE) Visual Studio Code and via the command line interface (CLI). Cantata is a code-driven unit testing framework used for dynamic testing of software. It enables the execution of compiled test cases alongside the linked-in code under test. These test executables can be run on various computing platform, including native operating systems or target platforms. The integration of debuggers is available but optional.
Cantata is primarily utilized by developers working on application software written in C and C++, as well as those developing system software for embedded systems and mobile devices.

## Industrial use

Cantata offers a solution to meet the rigorous requirements of international regulatory standards governing the development and verification of functional safety software across various industries. These standards encompass stringent criteria for achieving specific Safety Integrity Level (SIL) and advocate for practices such as unit testing and integration testing with a code-driven testing framework.
* Aerospace RTCA: DO-178C: Software Considerations in Airborne Systems and Equipment Certification.
* Automotive ISO 26262: Road vehicles & Functional safety.
* Energy/Nuclear Power IEC 60880: Nuclear power plants. Instrumentation and control systems important to safety. Software aspects for computer based systems performing category A functions.
* Industrial Automation IEC 61508: Functional Safety of Electrical/Electronic/Programmable Electronic Safety-related Systems.
* Medical Devices IEC 62304: Medical device software. Software lifecycle processes.
* Railways EN 50128 & EN 50129: Railway applications. Communications, signalling and processing systems. Software for railway control and protection systems.
* Space ECSS-E-ST-40C Space Engineering & ECSS-Q-ST-80 Space Product Assurance
* Munition Related Computing Systems NATO AOP-52: Software Safety Design and Munition-Related Computing Systems.
Cantata may be used in each of these sectors to meet the verification requirements of the regulatory standard.

## Tool certification

Cantata has been independently classified and certified by the functional safety certification body SGS-TÜV GmbH as “usable in the development of safety related software” to the highest safety integrity levels in each of the above standards.
The mapping of verification and validation requirements in each of the standards for functional software testing, robustness testing and structural testing (code coverage) to the capabilities of Cantata are available from the vendor, together with tool certification kits for IS0 26262, IEC 60880, IEC 61508, IEC 62304 and EN 50128, and tool qualification kits for DO-178C/DO-330.

## Cantata Hybrid

In April 2024, QA Systems launched Cantata Hybrid, a specialized subset of Cantata that allows for the generation of certified test results and code coverage metrics from existing GoogleTest suites. This tool addresses the need for compliance with functional safety standards like ISO 26262, DO-178C, and IEC 61508. Cantata Hybrid ensures that existing GoogleTest suites can be used without modification, providing code coverage analysis up to the MC/DC level.
Cantata Hybrid has been independently certified by SGS-TÜV GmbH as suitable for use at the highest safety integrity level for the main software functional safety standards. This certification highlights its reliability and effectiveness in safety-critical industries such as automotive, medical, and aerospace.