Blackbox Testing — Legalisasi (Apostille & Legalisasi)
- Domain: Apostille & Legalisasi
- Fitur: Legalisasi (jalur negara non-Apostille)
- Role/aktor: umum (pemohon), verifikator_apostille
- Tanggal uji: 2026-08-19
- Penguji (sesi): Supervisor Apostille
- Build/commit: 63c40a17 (dev/4)
1. Ringkasan fitur
Legalisasi adalah cabang layanan untuk negara tujuan yang BUKAN anggota Konvensi Apostille (Den Haag). Layanan ini diturunkan otomatis dari negara tujuan (isApostille=false pada daftar negara). Alur intake, klasifikasi, ekstraksi, validasi, dan verifikasi identik dengan Apostille; perbedaannya: (1) badge layanan menampilkan "Legalisasi", (2) Jalur Percepatan tidak tersedia (khusus Apostille), (3) applicationType=LEGALISASI dipersistensi beserta negara tujuan, dan (4) baris daftar tidak memiliki SLA percepatan.
2. Full workflow
2.1 Diagram state
stateDiagram-v2
[*] --> CREATED: submit-form (LEGALISASI)
CREATED --> AWAITING_CLASSIFICATION: fase 1
AWAITING_CLASSIFICATION --> READY: /start + fase 2
READY --> IN_VERIFICATION: /submit
IN_VERIFICATION --> COMPLETED: /decide
COMPLETED --> [*]
2.2 Sequence (aktor - sistem)
sequenceDiagram
actor U as umum
participant FE as ApostilleUploadPage
participant BE as Backend
U->>FE: Pilih negara non-Hague (mis. Malaysia)
FE->>FE: serviceForCountry(MY) -> LEGALISASI
FE->>U: badge "Layanan: Legalisasi"; Percepatan tidak tersedia
U->>FE: Unggah berkas, Ajukan
FE->>BE: POST /submit-form (applicationType=LEGALISASI, country=MY)
BE-->>FE: { submissionId } (jalur REGULER, tanpa SLA)
2.3 Peta route & UI
| Langkah |
Route |
Komponen |
Elemen |
Selector |
| Pilih negara non-Hague |
/apostille |
ApostilleUploadPage |
SearchableSelect |
placeholder "Pilih atau ketik negara tujuan…" |
| Badge Legalisasi |
/apostille |
Badge |
"Layanan: Legalisasi" |
teks |
| Jalur (Percepatan nonaktif) |
/apostille |
ApostilleJalurSelector |
kartu Percepatan "Tidak tersedia untuk Legalisasi" |
[data-testid="fasttrack-card"] |
| Daftar |
/apostille/daftar |
ApostilleListPage |
kolom Layanan/Jalur |
- |
3. Prasyarat & data uji
| ID data |
Tipe |
Berkas |
Deskripsi |
Ekspektasi sistem |
| D-POS-40 |
Positive |
Malaysia (MY) via UI |
Negara non-Hague |
badge Legalisasi, Percepatan nonaktif |
| D-POS-41 |
Positive |
submit-form LEGALISASI + MY |
Persistensi layanan + negara |
applicationType LEGALISASI, jalur REGULER, slaDeadline null |
| D-NEG-40 |
Negative |
LEGALISASI + jalur PERCEPATAN |
Percepatan pada Legalisasi |
409 FASTTRACK_SERVICE |
| D-POS-42 |
Positive |
legalisasi_elektronik_sk (ORANG_LAIN) |
Alur identik Apostille |
routing ORANG_LAIN dari surat kuasa |
4. Matriks skenario uji
| ID |
Tipe |
Lapisan |
Langkah ringkas |
Ekspektasi |
Hasil aktual |
Status |
Bukti |
| TC-LGL-01 |
Positive |
UI |
Pilih Malaysia, cek badge + Percepatan tidak tersedia |
badge Legalisasi; kartu Percepatan tidak selectable |
Sesuai |
PASS |
legalisasi-service.png / intake-service-derive.png |
| TC-LGL-02 |
Positive |
API |
submit-form LEGALISASI + MY |
200; list applicationType LEGALISASI, jalur REGULER, slaDeadline null |
Sesuai |
PASS |
legalisasi.spec |
| TC-LGL-03 |
Negative |
API |
submit-form LEGALISASI + jalur PERCEPATAN |
409 FASTTRACK_SERVICE |
Sesuai |
PASS |
legalisasi.spec / curl live |
| TC-LGL-04 |
Positive |
API |
Legalisasi ORANG_LAIN routing |
pemberi/penerima terbaca dari surat kuasa |
Sesuai |
PASS |
inspeksi review legalisasi 3c7e451a |
5. Cakupan UI (semua yang diakses user)
| Route/Elemen |
Diuji? |
Perilaku benar? |
Catatan |
| Picker negara non-Hague |
Ya |
Ya |
Malaysia -> Legalisasi |
| Badge "Layanan: Legalisasi" |
Ya |
Ya |
Terderivasi |
| Kartu Percepatan (nonaktif di Legalisasi) |
Ya |
Ya |
Pesan "Tidak tersedia untuk Legalisasi", aria-pressed tetap false saat diklik |
| Unggah + Ajukan |
Ya (via intake) |
Ya |
Sama seperti Apostille |
| Daftar (kolom Layanan) |
Sebagian |
- |
Diverifikasi via API list |
6. Temuan bug & perbaikan
| ID bug |
Severity |
Ringkas |
Reproduksi |
Ekspektasi |
Aktual |
Screenshot |
Rekomendasi perbaikan |
| BUG-LGL-01 |
Low |
Komentar/asumsi lama "Legalisasi hanya mendukung Perdagangan" tidak lagi berlaku |
Bandingkan categoriesForService (mengembalikan semua kategori) dengan blok outOfType di papan |
Konsistensi kode/perilaku |
Papan tidak membatasi kategori per layanan; kode outOfType menjadi dead-path |
- |
Bersihkan komentar + logika outOfType bila memang tidak ada pembatasan (lihat juga BUG-CLS-02) |
Tidak ada bug fungsional pada pemisahan cabang layanan. Cabang Legalisasi berperilaku benar (service diturunkan dari negara, Percepatan diblok).
7. Ringkasan & rekomendasi
- Total skenario: 4 (PASS 4 / FAIL 0)
- Cakupan UI: badge + Percepatan-nonaktif + intake teruji; kolom Daftar via API
- Bug: High 0, Med 0, Low 1 (dead-path kategori per layanan)
- Rekomendasi prioritas: rapikan logika kategori-per-layanan yang sudah tidak dipakai.
- Gap/keterbatasan: Legalisasi ORANG_LAIN sampai READY end-to-end terhambat masalah deteksi KTP PDF yang sama seperti Apostille (lihat Classification BUG-CLS-01). Alur ekstraksi/validasi/verifikasi identik dengan Apostille sehingga cakupan aturan mengacu pada laporan Eligibility & Verifier.