Mutation Testing #6
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
| name: Mutation Testing | |
| on: | |
| schedule: | |
| # Run weekly on Sundays at 02:00 UTC | |
| - cron: '0 2 * * 0' | |
| workflow_dispatch: | |
| # Allow manual triggering | |
| jobs: | |
| mutation-test: | |
| name: Mutation Testing | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Setup pnpm | |
| uses: pnpm/action-setup@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| - name: Run mutation testing | |
| run: pnpm run test:mutation | |
| - name: Upload mutation report | |
| uses: actions/upload-artifact@v4 | |
| if: always() | |
| with: | |
| name: mutation-report | |
| path: reports/mutation/ | |
| retention-days: 90 | |
| - name: Check mutation score | |
| run: | | |
| echo "Mutation testing complete. Check artifacts for detailed report." | |
| echo "Target: ≥80% mutation score" |