Menguasai test management menggunakan tools seperti TestRail dan Jira, termasuk test plan, traceability matrix, dan reporting

Setelah di episode 3 kita mempelajari test case design & techniques, pada episode ini kita mempelajari test management & documentation — bagaimana mengelola test case, test plan, dan test results secara terstruktur. Test management yang baik memastikan testing terorganisir, traceable, dan bisa di-reproduce.
Mengapa test management penting? Karena tanpa sistem yang terorganisir, test case akan berserakan, hasil testing tidak terlacak, dan sulit membuktikan kualitas produk ke stakeholder. Dengan test management yang baik, kalian bisa menjawab pertanyaan "seberapa yakin kita produk ini siap release?" dengan data.
TestRail adalah tool test management populer untuk mengelola test case, test runs, dan results:
TestRail Structure:
├── Project: nama project
├── Suite: kumpulan test cases (bisa per feature)
├── Section: sub-kategori dalam suite
├── Test Case: langkah testing individual
├── Test Run: eksekusi test cases
└── Result: hasil eksekusi (pass/fail/blocked)Jira bisa digunakan untuk test management dengan plugin seperti Zephyr atau Xray:
Jira + Zephyr:
├── Issue Type: Test, Test Cycle, Test Plan
├── Fields: Steps, Expected Result, Actual Result
├── Cycles: grouping test execution
├── Reports: coverage, execution status
└── Integration: direct link dengan bug reportsTest plan adalah dokumen utama yang mendefinisikan pendekatan testing:
test_plan:
title: "Test Plan - Fitur Payment Gateway"
version: "1.0"
scope:
in_scope:
- Payment dengan kartu kredit
- Payment dengan e-wallet
- Payment dengan bank transfer
- Refund process
out_of_scope:
- Payment gateway internal
- Settlement process
strategy:
- Functional testing untuk semua payment method
- Boundary value analysis untuk amount
- Security testing untuk card data
- Performance testing untuk concurrent payment
environment:
- Staging: payment-sandbox.example.com
- Tools: Postman, browser, Jira
resources:
- QA Lead: test plan & coordination
- QA Tester 1: functional testing
- QA Tester 2: API testing
timeline:
- Test design: 3 hari
- Test execution: 5 hari
- Regression: 2 hari
exit_criteria:
- 100% test cases executed
- No P1/P2 bugs open
- All critical paths testedRTM memastikan semua requirement ter-cover oleh test case:
| Requirement | Test Case | Status | Notes |
|---|---|---|---|
| REQ-001: User login | TC-LOGIN-001, TC-LOGIN-002 | Covered | |
| REQ-002: Payment process | TC-PAY-001, TC-PAY-002 | Covered | |
| REQ-003: Refund process | TC-REFUND-001 | Covered |
Note
RTM adalah alat wajib untuk audit dan compliance. Di industri regulated seperti banking atau healthcare, RTM harus lengkap dan bisa diaudit kapan saja.
Test Execution Summary:
├── Total Test Cases: 150
├── Executed: 150 (100%)
├── Passed: 140 (93.3%)
├── Failed: 5 (3.3%)
├── Blocked: 3 (2%)
├── Not Run: 0 (0%)
├── Pass Rate: 93.3%
└── Coverage: 100%Defect Summary:
├── Total Bugs: 15
├── P1 (Critical): 0
├── P2 (High): 2
├── P3 (Medium): 8
├── P4 (Low): 5
├── Open: 3
├── In Progress: 2
├── Closed: 10
└── Resolution Rate: 66.7%Berikut langkah setup TestRail untuk project baru:
Setup TestRail:
├── 1. Buat project baru
│ └── Nama: "E-Commerce App"
├── 2. Buat test suite
│ └── Suite: "Regression Suite"
├── 3. Buat sections
│ ├── Section: "Authentication"
│ ├── Section: "Payment"
│ └── Section: "Shipping"
├── 4. Buat test cases
│ ├── Per section minimal 5 test cases
│ ├── Setiap test case punya steps & expected result
│ └── Assign priority (High/Medium/Low)
├── 5. Buat test run
│ ├── Nama: "Sprint 5 - Regression"
│ ├── Pilih test cases yang akan dijalankan
│ └── Assign ke tester
└── 6. Jalankan & record results
├── Update status setiap test case
├── Link failed test ke bug report
└── Generate reportPada episode 4 ini, kalian telah mempelajari test management & documentation menggunakan tools profesional.
Inti yang harus dibawa pulang:
Di episode 5 selanjutnya, kita akan membahas functional & usability testing — bagaimana menguji fungsi dan kemudahan penggunaan aplikasi secara efektif. Sampai jumpa di episode 5!