feat: add mutation testing with Stryker for frontend and backend#502
Open
MavDavis wants to merge 1 commit into
Open
feat: add mutation testing with Stryker for frontend and backend#502MavDavis wants to merge 1 commit into
MavDavis wants to merge 1 commit into
Conversation
Implemented comprehensive mutation testing using Stryker to evaluate and improve test quality beyond standard code coverage metrics. Added: - Separate Stryker configurations for frontend (React Native) and backend (Node.js) - CI/CD integration with GitHub Actions workflow - Incremental mutation testing for PR performance optimization (60-80% faster) - Historical mutation score tracking and trending - Automated PR comments with detailed mutation reports - Equivalent mutant detection and analysis tools - Comprehensive documentation and quick reference guides Features: - 75% mutation score quality gate enforced in CI - Dashboard reporting with HTML, JSON, and markdown outputs - Survived mutant analysis with actionable recommendations - Parallel test execution with configurable concurrency Configuration files: - stryker.conf.json (frontend: src/**, app/**) - stryker.backend.conf.json (backend/**) - .github/workflows/mutation-testing.yml (CI workflow) Scripts: - scripts/run-incremental-mutation.js (git diff-based incremental testing) - scripts/generate-mutation-report.js (aggregated reporting) - scripts/analyze-equivalent-mutants.js (heuristic-based analysis) Documentation: - docs/mutation-testing.md (comprehensive guide) - MUTATION_TESTING_QUICKREF.md (commands and quick reference) - MUTATION_TESTING_IMPLEMENTATION.md (implementation summary) - mutation-reports/README.md (report format documentation) Updated package.json with @stryker-mutator dependencies, added npm scripts for mutation testing workflows, and enhanced CONTRIBUTING.md with mutation testing guidelines and best practices. Closes Smartdevs17#416
|
@MavDavis Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
Owner
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Implemented comprehensive mutation testing using Stryker to evaluate
and improve test quality beyond standard code coverage metrics.
Added:
Features:
Configuration files:
Scripts:
Documentation:
Updated package.json with @stryker-mutator dependencies, added npm scripts
for mutation testing workflows, and enhanced CONTRIBUTING.md with mutation
testing guidelines and best practices.
Closes #416