Skip to main content
TESSY Unit Testing for Embedded C/C++: MC/DC Coverage, ISO 26262 Qualification, and CI/CD Integration, featured image

TESSY Unit Testing for Embedded C/C++: MC/DC Coverage, ISO 26262 Qualification, and CI/CD Integration

GSAS Engineering · · 4 min read

TESSY Unit Testing for Embedded C/C++: MC/DC Coverage, ISO 26262 Qualification, and CI/CD Integration

Unit testing embedded software is fundamentally different from unit testing a web application or a desktop service. The code runs on resource-constrained microcontrollers. The functions interact with hardware registers, DMA buffers, and interrupt service routines. The test harness must either run on the target hardware or simulate it faithfully enough that the coverage results are meaningful to a safety assessor.

TESSY, developed by Razorcat Development GmbH in Berlin, is a dedicated dynamic testing tool built specifically for this problem space. It automates unit, module, and integration testing of embedded C and C++ code, with full support for the coverage metrics that IEC 61508, DO-178C, and IEC 62279 require, and that ISO 26262 recommends up to MC/DC at ASIL D.

What TESSY Automates

The three most time-consuming tasks in embedded unit testing are interface analysis, test driver generation, and stub creation. TESSY automates all three.

Interface analysis. TESSY parses the function signature, parameters, return types, global variables accessed, pointers to structures, and presents the complete interface in a test editor. Engineers do not manually trace which globals a function reads or writes. TESSY determines this automatically from the source code.

Test driver generation. For each function under test, TESSY generates a harness that sets up the input conditions, calls the function, and captures the outputs. This harness compiles against the project’s actual toolchain (GCC, IAR, Keil, Green Hills, HighTec, TASKING), so the generated code runs the same compiler optimizations and calling conventions as the production build.

Stub creation. Functions called by the unit under test are replaced with controllable stubs. Engineers define stub return values and side effects per test case, isolating the unit from its dependencies. TESSY generates the stub framework; engineers fill in the behavior.

Coverage Metrics for Safety Certification

TESSY measures statement, branch, decision, MC/DC (Modified Condition/Decision Coverage), and MCC (Multiple Condition Coverage) coverage. ISO 26262 Part 6 gives MC/DC its strongest recommendation at the unit level at ASIL D, but nothing in the standard is mandatory: the highest rating it applies to any method is highly recommended, and because the unit-level coverage metrics are alternative entries, the obligation is to apply an appropriate combination and give a rationale for it. Branch coverage is already recommended from ASIL A rather than introduced later, and statement coverage relaxes at the higher ASILs rather than disappearing, since 100% branch coverage implies 100% statement coverage. Many Indian automotive teams target MC/DC across all ASIL levels to simplify their safety argument.

Coverage results are displayed graphically, green for covered, red for uncovered, and exported as HTML or PDF reports suitable for inclusion in a safety case. The reports include the mapping between test cases and requirements, satisfying the bidirectional traceability that ISO 26262 Part 6 expects between software requirements and unit test cases.

Classification Tree Editor for Systematic Test Design

TESSY includes a Classification Tree Editor (CTE), a graphical tool for systematic test case design based on equivalence partitioning and boundary value analysis. Engineers define input classifications (valid ranges, boundary values, error conditions) visually, and TESSY generates the corresponding test vectors.

This is not just a convenience feature. ISO 26262 Part 6 recommends systematic routes to deriving test cases, equivalence classes and boundary values among them, and strengthens that recommendation as the ASIL rises. The CTE provides an auditable, traceable approach that satisfies this recommendation. Assessors can see the rationale behind each test case, not just the results.

CI/CD Integration

TESSY supports batch execution via command line, which means test suites run unattended in Jenkins, GitLab CI, Azure DevOps, or GitHub Actions pipelines. The typical workflow:

  1. Developer pushes code to the repository
  2. CI pipeline triggers a TESSY batch run
  3. TESSY re-runs all affected test suites
  4. Coverage reports are generated and archived as build artifacts
  5. A quality gate checks that coverage thresholds are met, if not, the pipeline fails

This regression testing model catches regressions the same day they are introduced. On safety-critical projects, where a single missed regression can cascade into months of re-verification, this automation is not optional, it is an engineering necessity.

Requirements Traceability with ReqIF

TESSY imports and exports requirements in ReqIF (Requirements Interchange Format), the OMG standard used by IBM DOORS, Polarion, codebeamer, and Siemens Teamcenter. Test cases link to requirements for bidirectional traceability: from requirement to test case (forward) and from test case to requirement (backward).

For ISO 26262 ASIL C and D projects, this traceability is mandatory. During a safety assessment, the assessor will ask: “Show me which test cases verify requirement X, and show me which requirements are covered by test case Y.” TESSY generates this matrix automatically.

Tool Qualification

Razorcat states that “TESSY is qualified for safety-related software development according to IEC 61508, IEC 62304, ISO 26262 and EN 50128”, and supplies a Tool Qualification Package covering the functionality to be validated, the validation activities and the test results your safety assessor will ask to see. That is evidence you would otherwise have to produce yourself, which is the part Indian teams on tight certification timelines feel most.

Why Buy from GSAS

GSAS Micro Systems is the authorized Razorcat engineering partner for India, the UAE and Sri Lanka, providing TESSY licensing with INR invoicing, onboarding workshops, CI/CD integration consulting, and ongoing technical support. Our functional safety engineers in Bengaluru, Hyderabad, Chennai, Pune, Mumbai, and Delhi NCR work directly with automotive, aerospace, and industrial teams to deploy TESSY into existing development workflows, from initial tool evaluation through production-grade CI/CD pipeline integration. Whether your team is targeting ISO 26262 for an AURIX-based ECU or IEC 61508 for an industrial safety controller, GSAS provides the tooling and the expertise to get your unit testing infrastructure production-ready.

Request a TESSY evaluation →

Interested in Razorcat tools?

Talk to our application engineers for personalized tool recommendations.

Stay in the Loop

Get monthly compliance updates, product insights, and engineering best practices delivered to your inbox.

Related Articles

FPGA in the loop verification workflow between Simulink and a Zynq-7000 development board
Technical Guides Digilent

ZedBoard FPGA-in-the-Loop: HDL Verifier vs HDL Coder

Teams asking for FPGA-in-the-Loop on a ZedBoard usually name HDL Coder and SoC Blockset. FIL is actually HDL Verifier. Here is the correct product split, the JTAG versus Ethernet decision, and the 2015-era advice that is still sending Indian teams down the wrong path.

5 Aug 2026 · 9 min read
FADOS MUX test station on an Indian EMS line generating a board test report, GSAS FADOS reporting workflow
FADOS CBT Electronic

FADOS Test Reports and GSAS Agent: Turning Board Test Results into an Auditable Record

A pass or fail on the FADOS screen is not a record. This guide covers what the FADOS test report contains, what GSAS Agent does with it, and how offline, Google Drive and LAN modes put a QR-linked report on the job card for repair shops and EMS lines in India.

4 Aug 2026 · 8 min read
Classification tree and combination table used to design embedded unit test cases in Razorcat's Classification Tree Editor for TESSY, available in India from GSAS Micro Systems
Compliance & Safety Razorcat Automotive & Mobility

Test Case Design with the Classification Tree Method: Deriving Unit Tests You Can Defend in an Audit

Ad-hoc test cases can be perfectly good tests and still fail an audit, because nothing on file records why that particular set was sufficient. The Classification Tree Method derives test cases from the input space instead: identify the test-relevant aspects as classifications, partition each into equivalence classes, then combine leaf classes in a combination table. Razorcat implements CTM in the Classification Tree Editor, available integrated into TESSY or standalone. GSAS Micro Systems is the authorized Razorcat engineering partner for India, the UAE and Sri Lanka.

1 Aug 2026 · 10 min read