Coverage calculation for C++ and Rust

Open
#259 6 comments 0 reactions 1 assignee View on GitHub

@dcalavrezo-qorix is already working on this.

Since Jul 23, 2026.

Assessment

This issue has not been assessed yet.

Description

bug

Currently issues with coverage calculation are observed across different Modules. We need a common solution that can be applied and used in reference_integration.

Problem definition

Mutual

  • we need solution that is common and can be reused by everyone
  • we need justifications when coverage != 100%, we need mechanisms to justify etc.
  • tooling should support platform variants, allows justifications only for specific one, etc.
  • tooling should allow easy use to developers and clear information where improvements are needed
  • tooling will require certification but there is no other known alternative that will fulfill all our requirements
  • tool requirements initially defined in https://github.com/eclipse-score/communication/pull/549

C++

  • different frameworks have different statements definition - we need that aligned in SCORE
  • bazel coverage is not 100% reliable
  • PR with suggested changes as reference https://github.com/eclipse-score/communication/pull/549
  • No other alternatives exist for our knowledge right now

Rust

  • currently only line coverage is calculated
  • ferrocene toolchain supports only Linux (QNX UTs don't work)
  • there was a new PR in toolchains to support coverage in QNX @PiotrKorkus to check if that works
    https://github.com/eclipse-score/bazel_cpp_toolchains/pull/62
  • other coverages where quoted to ferrocene. Branch coverage would be possible to get with other open-source solutions

It should be possible to use a common tool for generating coverage for both languages.

Next steps

  • Get QNX coverage working for C++
  • Look into Rust coverage
  • Rust and C++ report should have a combined report
Dominant language
Python
Stars
5
Forks
38
Avg merge
1d 2h
Merged PRs (30d)
22

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from eclipse-score/reference_integration

All issues in eclipse-score/reference_integration

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.