QualityHub CLI - Parse test results and push to QualityHub for AI-powered quality analysis
npm install qualityhub-cli


Command-line tool to parse test results, generate qa-result.json, and push to QualityHub for AI-powered quality analysis.
- ๐งช Parse test results from Jest, JaCoCo, JUnit
- ๐ Generate qa-result.json automatically
- ๐ Push to QualityHub backend
- ๐จ Colorful output with risk analysis
- โก Fast and lightweight
---
``bash`
npm install -g qualityhub-cli
`bash`
git clone https://github.com/ybentlili/qualityhub-cli
cd qualityhub-cli
npm install
npm run build
npm link
---
`bash`
qualityhub init
Creates .qualityhub.yaml:`yaml`
api_endpoint: http://localhost:8080
project_name: ''
---
#### Jest (JavaScript/TypeScript)
`bashParse Jest coverage
qualityhub parse jest ./coverage
Required files:
-
coverage/coverage-summary.json (required)
- test-results.json (optional)---
#### JaCoCo (Java Coverage)
`bash
Parse JaCoCo XML report
qualityhub parse jacoco ./target/site/jacoco/jacoco.xmlWith options
qualityhub parse jacoco ./build/reports/jacoco/test/jacocoTestReport.xml \
--output qa-result.json \
--project my-java-app
`Required files:
-
jacoco.xml---
#### JUnit (Java/Kotlin/Python Tests)
`bash
Parse JUnit XML reports
qualityhub parse junit ./build/test-results/testWith options
qualityhub parse junit ./target/surefire-reports \
--output qa-result.json \
--project my-api
`Required files:
-
TEST-*.xml files---
$3
`bash
qualityhub push qa-result.json
`Output example:
`
โ
QA results uploaded successfully!Result ID: 123e4567-e89b-12d3-a456-426614174000
Risk Score: 85/100
Status: SAFE
Decision: PROCEED
View details: http://localhost:3000/dashboard
`---
๐ฏ Complete Workflow
`bash
1. Initialize (once)
qualityhub init2. Run your tests with coverage
npm test -- --coverage # Jest
./gradlew test jacocoTestReport # Java/Gradle
mvn test jacoco:report # Java/Maven3. Parse results
qualityhub parse jest ./coverage4. Push to QualityHub
qualityhub push qa-result.json5. View in dashboard
open http://localhost:3000/dashboard
`---
๐ qa-result.json Format
Generated
qa-result.json:`json
{
"version": "1.0.0",
"project": {
"name": "my-app",
"version": "1.0.0",
"commit": "abc123",
"branch": "main",
"timestamp": "2026-01-31T20:00:00Z"
},
"quality": {
"tests": {
"total": 247,
"passed": 245,
"failed": 2,
"skipped": 0,
"duration_ms": 8234,
"flaky_tests": ["UserAuthTest.testTimeout"]
},
"coverage": {
"lines": 87.33,
"branches": 82.24,
"functions": 91.28,
"statements": 88.74
}
},
"metadata": {
"ci_provider": "github-actions",
"adapters": ["jest"]
}
}
`---
๐งช Examples
See
examples/ directory for mock test files:-
examples/jest/ - Jest coverage + test results
- examples/jacoco/ - JaCoCo XML report
- examples/junit/ - JUnit XML reports$3
`bash
qualityhub parse jest ./examples/jest
qualityhub parse jacoco ./examples/jacoco/jacoco.xml
qualityhub parse junit ./examples/junit
`---
๐ง CLI Options
$3
`bash
qualityhub parse [options]
`Arguments:
-
: Parser type (jest, jacoco, junit)
- : Path to test resultsOptions:
-
-o, --output : Output file (default: qa-result.json)
- -p, --project : Project name
- -v, --version : Project version
- -c, --commit : Git commit hash
- -b, --branch : Git branch name---
๐จ Supported Frameworks
| Framework | Language | Parser | Coverage | Tests |
|-----------|----------|--------|----------|-------|
| Jest | JavaScript/TypeScript | โ
| โ
| โ
|
| JaCoCo | Java/Kotlin | โ
| โ
| โ |
| JUnit | Java/Kotlin/Python | โ
| โ | โ
|
Combine parsers for complete coverage:
`bash
Java project: JUnit (tests) + JaCoCo (coverage)
qualityhub parse junit ./target/surefire-reports
Then merge coverage from JaCoCo manually
`---
๐ Troubleshooting
$3
`bash
Check file locations
ls -la coverage/
ls -la target/site/jacoco/
ls -la build/test-results/Use absolute paths
qualityhub parse jest /Users/me/project/coverage
`$3
`bash
Check backend is running
curl http://localhost:8080/api/v1/healthUpdate .qualityhub.yaml
api_endpoint: http://localhost:8080
``---
- Main Repository: qualityhub
- Issues: GitHub Issues
- npm Package: qualityhub-cli
---
MIT License - see LICENSE file
---
Contributions welcome! Please read CONTRIBUTING.md for details.
---
Built with โค๏ธ by the QualityHub community