feat(bdd): add --coverage flag to run-bdd-tests.sh for all SDKs#2950
feat(bdd): add --coverage flag to run-bdd-tests.sh for all SDKs#2950hubcio merged 5 commits intoapache:masterfrom
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #2950 +/- ##
============================================
- Coverage 72.01% 71.94% -0.08%
Complexity 925 925
============================================
Files 1113 1113
Lines 92345 92345
Branches 69896 69906 +10
============================================
- Hits 66500 66434 -66
- Misses 23290 23340 +50
- Partials 2555 2571 +16
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
|
I noticed that all bdd test weren't ran when |
1d20cb0 to
8f42d89
Compare
oh right, I added a |
Which issue does this PR close?
Closes #2865
Rationale
The BDD test script runs all SDK tests via Docker Compose but has no way to collect code coverage from the containers. The Go workaround (
go test -coverprofile) does not scale to the other SDKs (Rust, Python, Node, C#, Java).What changed?
Previously, coverage collection from BDD containers required per-SDK workarounds outside the shared Docker Compose stack. There was no unified mechanism to instrument all six SDKs during a BDD run.
A
--coverageflag was added torun-bdd-tests.shthat loads a Compose override file (docker-compose.coverage.yml). The override mounts a shared./reportsvolume into each BDD container and replaces the test command with the SDK-specific coverage-instrumented variant (Go coverprofile, cargo-llvm-cov, pytest-cov, c8, dotnet CodeCoverage, JaCoCo). SDK dependency changes were minimal:pytest-covadded to Python BDD,jacocoplugin added to Java BDD,Microsoft.Testing.Extensions.CodeCoverageadded to C# BDD.Local Execution
AI Usage