Test Coverage
Target
| Tipe | Coverage |
|---|---|
| Unit Test (domain + data) | ≥ 80% |
| Widget / UI Test | ≥ 50% |
| E2E Test | Critical flows only |
| Overall | ≥ 70% |
Measurement Tools
| Platform | Tool |
|---|---|
| Android | JaCoCo |
| iOS | Xcode Code Coverage |
| Flutter | flutter test --coverage + lcov |
| React Native | Jest --coverage |
CI Enforcement
Coverage check wajib dijalankan di CI. MR yang menurunkan coverage di bawah threshold harus di-block.
# GitLab CI example
test:
script:
- flutter test --coverage
- lcov --summary coverage/lcov.info
coverage: '/lines\.*:\s*(\d+\.\d+)%/'