Files
REG_IBL/one-ui/agreement/one-md-packet-v8/TEST_CASE_MATRIX.md
2026-05-25 20:01:37 +07:00

9.0 KiB
Raw Permalink Blame History

TEST CASE MATRIX - ONE MD PACKET V8

📋 Quick Reference

ID Test Case Priority Status Tester Date Notes
A. SEARCH & FILTER
A1 Pencarian Paket P1
A2 Filter Perusahaan P1
A3 Filter MOU P1
B. CRUD PAKET
B1 Create Paket Profile P0
B2 Create Paket Panel P0
B3 Update Paket P0
B4 Delete Paket P0
B5 Button Disabled (Released MOU) P1
C. DETAIL PAKET
C1 View Detail P1
C2 Add Item (Profile) P0
C3 Add Item (Panel Unlocked) P0
C4 Add Item (Panel Locked) P0
C5 Edit Harga Paket Manual P0
C6 Edit Diskon Detail P0
C7 Remove Item P0
C8 Validasi Duplikasi P1
C9 Batal Edit P1
C10 Simpan Paket P0
C11 Kembali After Save P1
D. IMPORT
D1 Import Paket P2
D2 Import Validation P2
E. EDGE CASES
E1 Validasi Harga > Total P1
E2 Paket Kosong P2
E3 Loading State P2
E4 Clear All Discounts P2
E5 Add After Save P1
F. WORKFLOW
F1 Workflow Profile P0
F2 Workflow Panel Custom P0
F3 Workflow Edit Diskon P0
G. COMPATIBILITY
G1 Multi Browser P1
G2 Responsive P2
H. PERFORMANCE
H1 Large Data P2
H2 Search Performance P2

Legend:

  • Not Tested
  • Pass
  • Fail
  • ⚠️ Partial/Warning
  • 🔄 In Progress

Priority:

  • P0: Critical (Must pass before release)
  • P1: High (Important features)
  • P2: Medium (Nice to have)
  • P3: Low (Enhancement)

🎯 FOKUS TESTING PER FASE

Phase 1: Basic Functionality (P0)

Goal: Pastikan CRUD dasar berfungsi

Test Cases:

  • B1: Create Paket Profile
  • B2: Create Paket Panel
  • B3: Update Paket
  • B4: Delete Paket
  • C2: Add Item (Profile)
  • C3: Add Item (Panel Unlocked)
  • C5: Edit Harga Paket
  • C6: Edit Diskon Detail
  • C7: Remove Item
  • C10: Simpan Paket
  • F1: Workflow Profile Complete
  • F2: Workflow Panel Custom

Duration: 2-3 jam
Expected Pass Rate: 100%


Phase 2: Advanced Features (P1)

Goal: Test fitur lanjutan dan state management

Test Cases:

  • C4: Add Item (Panel Locked)
  • C8: Validasi Duplikasi
  • C9: Batal Edit
  • C11: Kembali After Save
  • E1: Validasi Harga
  • E5: Add After Save
  • A1-A3: Search & Filter
  • B5: Button States

Duration: 2-3 jam
Expected Pass Rate: ≥ 95%


Phase 3: Integration & Edge Cases (P2)

Goal: Test edge cases dan integration

Test Cases:

  • D1-D2: Import features
  • E2-E4: Edge cases
  • F3: Workflow complex
  • G1-G2: Compatibility
  • H1-H2: Performance

Duration: 2-3 jam
Expected Pass Rate: ≥ 90%


📊 TEST COVERAGE TARGET

Category Target Coverage Actual Status
CRUD Operations 100% %
Validation Rules 100% %
Business Logic 95% %
UI/UX 90% %
Edge Cases 85% %
Performance 80% %

🔑 KEY SCENARIOS - MUST PASS

Scenario 1: Create & Save Profile Packet

Steps: B1 → C2 (add 5 items) → C10 → C11
Critical Points:

  • Harga Paket = Total Harga (auto)
  • No manual price edit
  • Items saved correctly

Status:


Scenario 2: Create Panel with Custom Price

Steps: B2 → C3 (add items) → C5 (edit price) → C10
Critical Points:

  • Pro-rata distribution correct
  • Price locked after edit
  • Discounts saved properly

Status:


Scenario 3: Edit Detail Discounts

Steps: Select packet → C6 (edit discounts) → C10
Critical Points:

  • Disc % and Disc Rp both work
  • Price calculation correct
  • Total updates properly

Status:


Scenario 4: Add Items to Locked Packet

Steps: Select saved packet → C4 (add items)
Critical Points:

  • Price stays locked
  • Total updates, packet price doesn't
  • Lock indicator visible

Status:


Scenario 5: Cancel Changes

Steps: Edit packet → Make changes → C9
Critical Points:

  • Confirmation dialog shows
  • Changes reverted
  • Data reloaded from DB

Status:


🧮 CALCULATION VERIFICATION

Test 1: Pro-rata Distribution

Given:
  Item A: Rp 200.000
  Item B: Rp 150.000
  Item C: Rp 150.000
  Total: Rp 500.000

When: Set Harga Paket = Rp 400.000

Then:
  Total Disc = Rp 100.000
  
  Item A Disc = (200k/500k) × 100k = Rp 40.000
  Item A Final = 200k - 40k = Rp 160.000 ✅
  
  Item B Disc = (150k/500k) × 100k = Rp 30.000
  Item B Final = 150k - 30k = Rp 120.000 ✅
  
  Item C Disc = (150k/500k) × 100k = Rp 30.000
  Item C Final = 150k - 30k = Rp 120.000 ✅
  
  Verify: 160k + 120k + 120k = Rp 400.000 ✅

Status: | Result: _____


Test 2: Detail Discount Calculation

Given:
  Bruto: Rp 100.000
  Disc %: 10
  Disc Rp: Rp 5.000

Then:
  After % = 100k - (100k × 10%) = Rp 90.000
  Final = 90k - 5k = Rp 85.000 ✅

Status: | Result: _____


Test 3: Multiple Items Total

Given:
  Item 1: Rp 50.000 (Disc 5%, Disc Rp 2k) = 45.5k
  Item 2: Rp 75.000 (Disc 10%, Disc Rp 0) = 67.5k
  Item 3: Rp 100.000 (Disc 0%, Disc Rp 10k) = 90k

Then:
  Total = 45.5k + 67.5k + 90k = Rp 203.000 ✅

Status: | Result: _____


🎨 UI/UX CHECKLIST

Visual Elements

  • Selected packet has amber background
  • Locked price shows orange chip with lock icon
  • Profile type shows blue chip with info icon
  • Success alert is green with check icon
  • Loading bar appears during operations
  • Edit/Save icons change appropriately
  • Disabled buttons are gray
  • Required fields marked clearly

User Feedback

  • Confirmation dialog for delete
  • Alert when price > total
  • Alert when duplicate item
  • Success message after save
  • Info tooltip on locked price
  • Hint text for profile type
  • Loading indicators visible

Interaction

  • Click anywhere on row to select
  • Buttons respond to hover
  • Input fields accept keyboard input
  • Enter key triggers search
  • Modal dialogs can be closed
  • Tooltips appear on hover

🐛 COMMON ISSUES CHECKLIST

Known Issues to Watch

  • Price not updating after add/remove item
  • Lock state not persisting
  • Discounts not calculating correctly
  • Pro-rata rounding errors
  • Items not appearing in search
  • Dialog not closing after save
  • Data not refreshing after save
  • Console errors during operations

Regression Tests

  • Profile price always = total
  • Panel locked price stays fixed
  • Duplicate items blocked
  • MOU released disables buttons
  • Cancel reverts all changes
  • Save persists to database
  • Refresh loads correct data

📝 TESTING LOG TEMPLATE

Test Session

Date: ___________
Tester: ___________
Environment: ___________
Build/Version: ___________

Test Summary

Metric Value
Total Test Cases 33
Executed
Passed
Failed
Blocked
Pass Rate %

Failed Test Cases

ID Test Case Reason Severity Assigned To

Blockers

Notes




Sign-off

Tester: ___________
Date: ___________
Status: PASS / FAIL / CONDITIONAL


🚀 QUICK START GUIDE

Untuk Tester Baru

Step 1: Setup

  1. Buka aplikasi di browser
  2. Login dengan user test
  3. Pastikan ada data test (perusahaan, MOU, tests)

Step 2: Familiarisasi (15 menit)

  1. Baca section "Deskripsi Modul" di TESTING_GUIDE.md
  2. Pahami 2 tipe paket: Profile vs Panel
  3. Pahami konsep locked/unlocked price

Step 3: Start Testing

  1. Mulai dari Phase 1 (Basic Functionality)
  2. Ikuti test case B1 (Create Profile)
  3. Ikuti test case B2 (Create Panel)
  4. Lanjut ke test case berikutnya

Step 4: Report Issues

  1. Gunakan bug template di TESTING_GUIDE.md
  2. Screenshot/screen record jika perlu
  3. Include console error
  4. Report ke developer

Expected Time

  • Setup: 15 menit
  • Familiarisasi: 15 menit
  • Phase 1: 2-3 jam
  • Phase 2: 2-3 jam
  • Phase 3: 2-3 jam
  • Total: ~7-9 jam (1-2 hari kerja)

📚 REFERENCES

  • Main Guide: TESTING_GUIDE.md
  • Code Files:
    • components/oneMdPacketList.vue - Main packet list
    • components/oneMdPacketPxList.vue - Packet details
    • components/oneMdPacketTestList.vue - Test selection
    • components/oneMdPacketNew.vue - Create/edit dialog
    • store.js - State management
    • modules/packet.js - Packet module

Document Version: 1.0
Last Updated: 2026-01-22
Module: One MD Packet V8