GitHub Actions
Set up TestKase test reporting in your GitHub Actions workflows.
GitHub Actions
GitHub Actions
Setup Steps
- Go to your GitHub repo → Settings → Secrets and variables → Actions. Add
TESTKASE_PAT. - Create the workflow file
.github/workflows/testkase-report.yml. - Update
--project-id,--org-id,--cycle-id, and--formatto match your project. - Commit and push. The reporting step runs after your tests complete.
Pipeline Template
name: Test & Report to TestKase
on:
push:
branches: [main, develop]
pull_request:
branches: [main]
jobs:
test-and-report:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
- run: npm ci
- name: Run tests
run: npm test -- --reporter=junit --outputFile=test-results/junit.xml
continue-on-error: true
- name: Report results to TestKase
if: always()
run: |
npx @testkase/reporter report \
--token ${{ secrets.TESTKASE_PAT }} \
--project-id PRJ-1 \
--org-id 1173 \
--cycle-id TCYCLE-5 \
--format junit \
--results-file test-results/junit.xml \
--build-id "${{ github.run_number }}"npm test -- --reporter=junit --outputFile=… is a placeholder, not a real command for most runners.
Replace it with the command that produces your framework's results file — e.g.
pytest --junitxml=test-results/junit.xml, npx playwright test, or mvn test — and set --format
to match. See the Test Frameworks guides for the
exact command and format per framework.
--cycle-id TCYCLE-5 above is a placeholder. The test cases you report on must already be linked to
the cycle you target. If they are not, the API rejects every result with Test case not linked with
this test cycle, the reporter exits 1, and this pipeline goes red on its first run. Either add those
test cases to the cycle first, or drop --cycle-id altogether and report into TCYCLE-1 — the Master
Cycle, which always contains every test case in the project.
