Skip to content

chore(stryker): remove redundant test-projects list from config - #257

Merged
samtrion merged 1 commit into
mainfrom
fix/stryker-orphan-tests-integration-project
Nov 4, 2026
Merged

samtrion merged 1 commit into
mainfrom
fix/stryker-orphan-tests-integration-project

Conversation

@samtrion

@samtrion samtrion commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Problem

stryker-config.json lists four entries under test-projects, one of which (tests/NetEvolve.ProjectBuilders.Tests.Integration) is not part of ProjectBuilders.slnx. The key is misleading dead config. The latest successful mutation run analyses exactly the three slnx test projects (Tests.Unit, XUnit.Tests.Integration, TUnit.Tests.Integration) and never mentions the orphan.

Root cause

The config uses "solution": "ProjectBuilders.slnx". In Stryker 5.0.0 solution mode, test projects are discovered from the solution and test-projects has no effect (read from the 5.0.0 source and corroborated by the existing log). The list is therefore redundant, and one entry is stale.

Change

Remove the test-projects array from stryker-config.json (6 lines deleted). The orphan project itself and the README references to it are intentionally left for a separate change.

Before / After

Run: https://github.com/dailydevops/projectbuilders/actions/runs/40809851770 (workflow_dispatch on this branch) vs. the latest successful run on main.

metric before after
mutation score 74.73% 74.73%
mutants created 603 603
compile errors 27 27
no coverage 27 27
survived (only covered by failing tests) 40 40
ignored (block already covered) 109 109
killed / survived / timeout 349 / 51 / 0 349 / 51 / 0
"N tests are failing" warnings 16, 14, 30 16, 14, 30
run duration n/a about 11 min
test-projects entries 4 (1 stale) 0

As expected, nothing changed in the Stryker run; this is a pure config cleanup.

Risk / what this does not change

No behaviour change expected in solution mode. Does not delete the empty Tests.Integration project and does not touch the README. No score improvement is claimed.

@codecov

codecov Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 90.10%. Comparing base (4b57235) to head (ab0c61c).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #257   +/-   ##
=======================================
  Coverage   90.10%   90.10%           
=======================================
  Files          31       31           
  Lines         728      728           
  Branches       85       85           
=======================================
  Hits          656      656           
  Misses         63       63           
  Partials        9        9           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

The config runs Stryker in solution mode, where test projects are discovered from ProjectBuilders.slnx and the test-projects key is not used. The list also named tests/NetEvolve.ProjectBuilders.Tests.Integration, which is not part of the solution. Dropping the key removes the misleading entry; the analysed test projects stay the same.
@samtrion
samtrion force-pushed the fix/stryker-orphan-tests-integration-project branch from 36ada7c to ab0c61c Compare November 4, 2026 01:05
@samtrion
samtrion merged commit 8790747 into main Nov 4, 2026
15 checks passed
@samtrion
samtrion deleted the fix/stryker-orphan-tests-integration-project branch November 4, 2026 01:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant