Quick Reference
What are GitHub CI Checks?
GitHub CI Checks are automated quality gates that run on your pull requests and commits. TestDino shows a pass or fail signal in GitHub based on the test rules you set. If a required check fails, GitHub blocks the merge.- When your tests finish, TestDino compares the run against your quality gate settings.
- TestDino posts a green check (passed) or a red check (failed) on the PR or commit.
- The result appears in GitHub, so nobody has to open the dashboard to see it.
Why do CI checks matter?
- Stop unstable or failing code from being merged
- Enforce strict rules for critical branches (like main)
- Use different rules for PROD, STAGE, and DEV
- See failures instantly inside GitHub
- Combine real test signals with GitHub’s protection rules
Quality Gate Settings
These rules determine whether TestDino marks a check as pass or fail.Default Settings
By default, the Pass % and Flaky settings apply to all branches. You can override them later for specific environments such as PROD, STAGE, or DEV.Pass Rate
Minimum percentage of tests that must pass for the check to succeed.- Range: 0-100%
- Default: 90%
- Example: If set to 90%, at least 90% of your tests must pass for the check to be green
Mandatory Tags
All tests carrying these tags must pass. If even one fails, the whole check fails, no matter how high the overall pass rate is.- Use the
@prefix (for example@critical,@payment,@auth) - Useful for login, payments, security, or any flow that you cannot risk breaking
@critical as mandatory and one critical test fails, the check is red even when everything else passes.
Tags come from your Playwright test files. Learn how to add them in Test Annotations.
Flaky Handling
How flaky tests are treated:- Strict: flaky tests count as failures. Use this for production branches where stability is critical.
- Neutral: flaky tests are excluded from the pass rate calculation (default). Use this for development branches to focus on actual failures.
Environment Overrides
You can create different quality gates for different environments.
How does it work?
- Set up branch environments in your project (such as Production, Staging, and Development).
- Each environment appears as a row in the CI Checks settings table.
- For each environment, set a custom Pass %, Flaky Handling, and whether Tags apply.
- If you do not override a setting, the default applies.
Example Configuration
In this example the team lowered its own default to 80%, then tightened the rules for Production.Understanding Check Results
Each GitHub check shows green or red based on your rules.Passed: Green Check
Your code meets all quality gate requirements:- Pass rate meets or exceeds the threshold
- All mandatory tag tests passed
Failed: Red Check
Your code does not meet quality gate requirements because:- Pass rate is below the threshold, or
- One or more mandatory tag tests failed
Check Details
Click Details on the GitHub check to open the full report. It opens on the test results table, where every row links to the matching view in your TestDino dashboard.
The report has up to 3 sections. The last 2 appear only when the environment has mandatory tags configured.
A tag under “Tags not found” usually means a typo, or a tag that was renamed in the test files. The check still passes, so fix the configuration or that coverage stays unenforced.
Making CI Checks Required
This step tells GitHub which checks must pass before a pull request can be merged.- Go to Repository Settings → Rulesets
- Create or edit a rule
- Enable Require status checks to pass
- Click Add checks
- Select TestDino
- Set target branches (for example, main)
- Save the rule
Common Scenarios
High Pass Rate, but the Check Failed
Situation: 95% of tests passed, but the check is still red. Reason: A mandatory tag test failed. Solution: Fix the mandatory tag test first. Mandatory tags override the pass rate completely.Flaky Tests Causing Failures
Situation: The check fails because flaky tests are counted as failures. Solution: Switch the environment to Neutral flaky handling, fix the flaky tests, or use Strict only on stable branches like Production.Different Rule Requirements by Branch
Situation: You want strict rules for Production but lighter rules for Development. Solution: Use Environment Overrides. Set Development to a 70% pass rate with Neutral flaky handling, and Production to 95% with Strict.Best Practices
Troubleshooting
Related
GitHub Integration
Install the GitHub App and connect a repository
Environment Mapping
Map branches to the environments used by overrides
Flaky Tests
How TestDino classifies a flaky result
Test Annotations
Add the tags that mandatory tags rely on