You need test analytics, so you evaluate ReportPortal. Then you see the requirements: Elasticsearch, PostgreSQL, RabbitMQ, MinIO — five services just to view test results. For most teams, the infrastructure cost of running ReportPortal dwarfs the value of the analytics it provides.
The ReportPortal Trade-offs
ReportPortal offers a lot of features: real-time reporting, ML-based failure analysis, custom dashboards, and extensive integrations. But those features come with costs:
Infrastructure Requirements
A typical ReportPortal deployment needs:
- PostgreSQL database
- Elasticsearch (or OpenSearch)
- RabbitMQ message queue
- MinIO or S3 for binary storage
- The ReportPortal services themselves
That’s 5+ services to deploy, monitor, and maintain. The official docs recommend 16GB+ RAM for a production setup.
Operational Overhead
Running ReportPortal means:
- Managing Elasticsearch indices and storage
- Monitoring RabbitMQ queues
- Database backups and maintenance
- Keeping all services updated
- Handling scaling as test volume grows
This requires dedicated DevOps attention, which smaller teams often can’t spare.
Learning Curve
ReportPortal’s feature set is extensive. Dashboards, widgets, filters, defect types, analysis rules - there’s a lot to learn. Teams often end up using 20% of the features after spending significant time on setup.
Gaffer: Test Reporting Without the Overhead
Gaffer focuses on the core problem: getting test results out of CI and into a place where your team can actually use them.
Zero Infrastructure
Gaffer is a hosted service. No databases, no message queues, no Elasticsearch. Sign up, get an API key, upload results.
Simple Setup
Add one step to CI:
- name: Upload to Gaffer
if: always()
uses: gaffer-sh/gaffer-uploader@v1
with:
gaffer_api_key: ${{ secrets.GAFFER_UPLOAD_TOKEN }}
report_path: ./playwright-reportThat’s it. Reports are now hosted and shareable.
Focus on What Matters
Gaffer provides:
- Test report hosting - Shareable URLs for every test run
- Flaky test detection - Automatic identification of unreliable tests
- Pass rate trends - See test health over time
- Slow test tracking - Find tests dragging down your CI
- Slack notifications - Get alerts when tests fail
- GitHub integration - Commit statuses and PR comments
No ML-powered failure classification, no complex dashboard builders. Just the essentials, done well.
Feature Comparison
| Feature | ReportPortal | Gaffer |
|---|---|---|
| Test report hosting | Yes | Yes |
| Historical trends | Yes | Yes |
| Flaky test detection | Yes | Yes |
| ML failure analysis | Yes | No |
| Custom dashboards | Yes | No |
| Self-hosting required | Yes | No |
| Infrastructure needs | High | None |
| Setup time | Hours/Days | Minutes |
| Pricing | Self-host or SaaS | SaaS |
Framework Support
Both platforms support major frameworks, though integration methods differ:
| Framework | ReportPortal | Gaffer |
|---|---|---|
| Playwright | Agent | Native HTML + CTRF |
| Jest | Agent | JSON + CTRF |
| Vitest | Agent | HTML + CTRF |
| pytest | Agent | pytest-html + CTRF |
| JUnit | Agent | JUnit XML |
ReportPortal uses “agents” that report results in real-time. Gaffer parses standard report formats after test runs complete - no custom agents needed.
When to Use ReportPortal
ReportPortal might be a better fit if you:
- Have dedicated DevOps capacity for infrastructure
- Need ML-powered failure analysis
- Want highly customizable dashboards
- Run thousands of tests and need real-time reporting
- Have enterprise compliance requirements for self-hosting
When to Use Gaffer
Gaffer is probably a better fit if you:
- Want test reporting without infrastructure overhead
- Have a small-to-medium team
- Need quick setup that just works
- Value simplicity over feature count
- Want to avoid the ops burden of running 5+ services
Migration Path
If you’re currently using ReportPortal and finding the maintenance burden too high:
- Add Gaffer upload to your CI pipeline (alongside ReportPortal initially)
- Use your existing report formats - no agent changes needed
- Evaluate for a few weeks
- Remove ReportPortal agents if Gaffer meets your needs
- Decommission ReportPortal infrastructure
The upload-based approach means you’re not locked in - you can switch back or run both if needed.
Other Comparisons
Evaluating multiple tools? See how Gaffer compares to Allure.
Try It
Gaffer’s free tier gives you 500 MB storage with 7-day retention. Enough to see if the simpler approach works for your team.