Lewati ke isi

SPMB Manual UAT — Semua Role, Semua Alur

Modul: SPMB · Versi: 2.0 · Tanggal: 1 Mei 2026
Audiens: Tester non-teknis (QA manual)
Estimasi Total: ~3 jam (semua role)


Daftar Isi

  1. Prasyarat
  2. Panduan Pengisian
  3. Matriks Cakupan
  4. PUBLIC (Tanpa Login) — 12 TC
  5. PENDAFTAR (Calon Siswa) — 20 TC
  6. ADMIN (Operator SPMB) — 18 TC
  7. ADMIN STAFF (Tata Usaha) — 8 TC
  8. KEPALA SEKOLAH — 5 TC
  9. WAKA KESISWAAN — 6 TC
  10. WAKA HUMAS — 6 TC
  11. KEAMANAN AKSES (RBAC) — 8 TC
  12. ERROR & EDGE CASES — 12 TC
  13. Formulir Tanda Tangan

1. Prasyarat

Item Detail
URL Frontend https://<domain>/spmb atau http://localhost:5173/spmb
URL Backend https://be-dev.gcgscola.id atau http://127.0.0.1:8069
Browser Chrome/Edge terbaru, Incognito terpisah per role

Akun yang Dibutuhkan

Role Cara Dapat URL Login
Public Tidak perlu login /spmb
Pendaftar Buat baru saat tes /spmb/register
Admin Dari tim DevOps /login
Admin Staff Dari tim DevOps /login
Kepala Sekolah Dari tim DevOps /login
Waka Kesiswaan Dari tim DevOps /login
Waka Humas Dari tim DevOps /login

Data Seed

Pastikan sebelum mulai:

  • [ ] Min 1 gelombang status Pendaftaran Dibuka (state application)
  • [ ] Gelombang punya jalur + kuota (Domisili, Afirmasi, Prestasi, Mutasi)
  • [ ] Min 1 gelombang dengan tes CBT (selection_method = cbt_only)
  • [ ] Min 1 gelombang tanpa tes (selection_method = admin_only)
  • [ ] Min 1 gelombang berbayar (is_paid_admission = true)
  • [ ] Min 1 gelombang gratis (is_paid_admission = false)
  • [ ] Min 1 jenis tes + jadwal tes status Open

2. Panduan Pengisian

Untuk setiap test case: 1. Ikuti Langkah persis 2. Centang ✓ tiap item di Checklist 3. Isi Hasil Aktual jika beda dari harapan 4. Tandai Status: PASS / FAIL / SKIP 5. Jika FAIL → tulis Catatan + screenshot

Prioritas: P0 = wajib PASS (blocker) · P1 = penting · P2 = nice-to-have


3. Matriks Cakupan

# Role TC Estimasi
1 Public 12 15 min
2 Pendaftar 20 45 min
3 Admin 18 60 min
4 Admin Staff 8 20 min
5 Kepala Sekolah 5 10 min
6 Waka Kesiswaan 6 15 min
7 Waka Humas 6 15 min
8 RBAC 8 15 min
9 Error & Edge 12 20 min
TOTAL 95 ~3 jam

4. PUBLIC (Tanpa Login)

Buka Incognito baru. Pastikan tidak ada session.


PUB-001 · Landing Page · P0

URL: /spmb

  1. Buka /spmb

  2. [ ] Halaman termuat (bukan blank/404)

  3. [ ] Judul "Pendaftaran Peserta Didik Baru" atau "SPMB" terlihat
  4. [ ] Tombol "Mulai Daftar" terlihat
  5. [ ] Link "Cek Status" terlihat
  6. [ ] Link "Login" terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-002 · Registrasi Akun (Happy Path) · P0

URL: /spmb/register

  1. Isi: Nama=Tester UAT, Email=email aktif, HP=08123456789, Password=Test1234!, Konfirmasi=Test1234!
  2. Klik "Daftar"

  3. [ ] Form lengkap (Nama, Email, HP, Password, Konfirmasi)

  4. [ ] Setelah klik → redirect ke /spmb/verify-email
  5. [ ] Notifikasi sukses muncul

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-003 · Registrasi (Validasi Error) · P1

URL: /spmb/register

# Coba Harapan
a Klik Daftar tanpa isi apapun Error validasi di field kosong
b Email format salah (abc) "Format email tidak valid"
c Password < 8 karakter "Password minimal 8 karakter"
d Konfirmasi tidak cocok "Password tidak cocok"
e Email sudah terdaftar "Email sudah terdaftar"
f HP format salah (abc) Error format HP

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-004 · Verifikasi Email (Happy Path) · P0

URL: /spmb/verify-email

  1. Cek email → salin OTP 6 digit
  2. Input OTP → Klik "Verifikasi Email"

  3. [ ] Email OTP diterima (1–5 menit)

  4. [ ] Input OTP 6 digit tersedia
  5. [ ] Setelah OTP benar → "Email Berhasil Diverifikasi" → redirect /spmb/login

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-005 · Verifikasi Email (OTP Salah & Resend) · P1

# Coba Harapan
a OTP salah 000000 "Kode OTP tidak valid"
b Klik "Kirim Ulang OTP" OTP baru dikirim
c OTP expired lalu verify "OTP sudah kadaluarsa"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-006 · Login Pendaftar (Happy Path) · P0

URL: /spmb/login

  1. Isi email & password yang sudah diverifikasi → Klik "Masuk"

  2. [ ] Form: Email, Password, Tombol "Masuk"

  3. [ ] Link "Belum punya akun? Daftar" tersedia
  4. [ ] Login berhasil → redirect ke halaman pendaftaran

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-007 · Login Pendaftar (Gagal) · P1

# Coba Harapan
a Password salah "Email atau password salah"
b Email tidak terdaftar "Email atau password salah"
c Email belum diverifikasi Pesan belum verifikasi / redirect verify
d Semua field kosong Error validasi

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-008 · Cek Status (Happy Path) · P0

URL: /spmb/status

  1. Input nomor pendaftaran valid (format SPMB-2026-XXX) → Klik "Cek Status"

  2. [ ] Form input terlihat

  3. [ ] Data ditemukan: Nama, Status, Jalur, Gelombang

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-009 · Cek Status (Tidak Ditemukan) · P1

  1. Input SPMB-0000-999 → Klik "Cek Status"

  2. [ ] Pesan "Data tidak ditemukan"

  3. [ ] Tidak crash, bisa coba lagi

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-010 · Statistik Transparansi · P1

URL: /spmb/statistics

  • [ ] Halaman termuat
  • [ ] Statistik: Gelombang Aktif, Total Kuota, Total Pendaftar
  • [ ] ATAU "Belum ada data" jika kosong

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-011 · Monitor Kuota · P1

URL: /spmb/public/quota-monitor

  • [ ] Sisa kuota per jalur/gelombang terlihat
  • [ ] Angka wajar (≥0)
  • [ ] ATAU "Belum ada data"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PUB-012 · Responsif Mobile · P2

  1. Buka DevTools (F12) → device toolbar → 375px width
  2. Cek /spmb, /spmb/register, /spmb/login

  3. [ ] Tidak ada horizontal scroll

  4. [ ] Tombol & input bisa diklik
  5. [ ] Text readable

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


5. PENDAFTAR (Calon Siswa)

Login sebagai pendaftar (dari PUB-006 atau akun existing).


PEND-001 · Buat Pendaftaran Baru · P0

URL: /spmb/admission/new · Estimasi: 5 min

  1. Pilih gelombang aktif → Pilih jalur → Isi gender, tanggal lahir, HP
  2. Klik "Lanjutkan Pendaftaran"

  3. [ ] Gelombang aktif muncul dengan info kuota

  4. [ ] Jalur terlihat dengan sisa kuota
  5. [ ] Redirect ke /spmb/admission/<id>
  6. [ ] Notifikasi sukses

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-002 · Buat Pendaftaran (Kuota Penuh) · P1

Prasyarat: Jalur dengan kuota = 0

  • [ ] Jalur kuota penuh → disabled / "Kuota Penuh"
  • [ ] Tidak bisa dipilih

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-003 · Isi & Simpan Data Pribadi · P0

Estimasi: 10 min

  1. Di halaman detail, isi semua field:
  2. Data Pribadi: nama, tempat/tanggal lahir, agama, HP, NISN, NIK, No KK, No Akta
  3. Orang Tua: nama, NIK, HP, pekerjaan, email
  4. Alamat: jalan, kota, kode pos
  5. Sekolah Asal: nama, NPSN, alamat
  6. Klik "Simpan Data"

  7. [ ] Semua field muncul

  8. [ ] NIK / No KK tervalidasi 16 digit
  9. [ ] Tanggal lahir tidak bisa masa depan
  10. [ ] Simpan → "Data berhasil disimpan"
  11. [ ] Refresh → data tetap ada

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-004 · Data Khusus Jalur · P1

Jalur Field Tambahan
Domisili Alamat KK, lat/long, tgl terbit KK
Afirmasi Jenis afirmasi, no kartu
Prestasi Rata-rata rapor, daftar prestasi
Mutasi Instansi, no surat pindah, tanggal
  • [ ] Field sesuai jalur muncul, jalur lain tidak
  • [ ] Simpan berhasil

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-005 · Upload Dokumen · P0

URL: /spmb/admission/<id>/documents

  1. Upload setiap dokumen wajib (JPG/PNG/PDF)
  2. Coba upload file >5MB
  3. Coba upload file .exe

  4. [ ] Daftar dokumen wajib terlihat

  5. [ ] Upload berhasil + preview muncul
  6. [ ] File >5MB → error "Ukuran terlalu besar"
  7. [ ] File .exe → error "Format tidak didukung"
  8. [ ] Indikator kelengkapan berubah

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-006 · Hapus Dokumen · P1

  1. Klik hapus pada dokumen → Konfirmasi

  2. [ ] Dialog konfirmasi muncul

  3. [ ] Dokumen hilang setelah hapus
  4. [ ] Indikator kelengkapan ter-update

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-007 · Tambah/Edit/Hapus Prestasi · P1

URL: /spmb/admission/<id>/achievements

  1. Tambah Prestasi → isi nama, tingkat, tahun → Simpan
  2. Edit → ubah data → Simpan
  3. Hapus → Konfirmasi

  4. [ ] Tambah berhasil, muncul di daftar

  5. [ ] Edit berhasil
  6. [ ] Hapus berhasil (konfirmasi dulu)

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-008 · Submit Pendaftaran · P0

Prasyarat: Profil + dokumen wajib lengkap

  1. Klik "Submit Pendaftaran" → Dialog → "Ya"

  2. [ ] Tombol Submit muncul hanya jika lengkap

  3. [ ] Dialog: "Setelah submit, data tidak bisa diubah"
  4. [ ] Submit berhasil → status "Disubmit"
  5. [ ] Tombol Submit hilang, form read-only

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-009 · Submit (Data Belum Lengkap) · P1

  1. Buka pendaftaran yang belum lengkap dokumen
  2. Coba klik Submit

  3. [ ] Tombol disabled / tidak muncul

  4. [ ] ATAU error "Lengkapi dokumen wajib"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-010 · Jadwal Tes (Ada Jadwal) · P1

URL: /spmb/admission/<id>/tests
Prasyarat: Gelombang dengan tes, pendaftar sudah dikonfirmasi

  • [ ] Daftar jadwal tes terlihat (nama, tanggal, jam, lokasi)
  • [ ] Status kehadiran: "Belum Hadir"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-011 · Jadwal Tes (Tanpa Tes) · P1

Prasyarat: Gelombang admin_only / portfolio

  • [ ] Pesan "Seleksi tidak memerlukan tes masuk"
  • [ ] Tidak ada daftar jadwal

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-012 · CBT Tes Masuk · P0

URL: /spmb/cbt/spmb/cbt/runner/<exam_id> · Estimasi: 10 min
Prasyarat: Gelombang CBT + jadwal aktif + pendaftar di-assign

  1. Buka /spmb/cbt → Lihat daftar ujian
  2. Klik "Mulai Tes" → Jawab min 3 soal → Submit

  3. [ ] Daftar ujian muncul (nama, durasi, jumlah soal)

  4. [ ] CBT Runner termuat + soal pertama
  5. [ ] Timer berjalan
  6. [ ] Navigasi soal berfungsi
  7. [ ] Submit berhasil → halaman skor/konfirmasi

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-013 · Buat Pengaduan · P1

URL: /spmb/admission/<id>/complaints

  1. Klik "Buat Pengaduan" → Isi kategori, judul, deskripsi → Kirim

  2. [ ] Form lengkap (kategori, judul, deskripsi, lampiran)

  3. [ ] Kirim berhasil → status "Diajukan"
  4. [ ] Pengaduan muncul di daftar

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-014 · Pengumuman Diterima · P0

Prasyarat: State admission

  1. Login → Buka detail pendaftaran

  2. [ ] Banner "Diterima" terlihat

  3. [ ] Skor/penilaian terlihat (jika ada)
  4. [ ] Link ke "Daftar Ulang" terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-015 · Daftar Ulang Berbayar · P0

URL: /spmb/admission/<id>/enrollment
Prasyarat: State admission, is_paid_admission = true

  1. Lihat tagihan → "Lanjut ke Pembayaran" → "Cetak Invoice" → "Konfirmasi Daftar Ulang"

  2. [ ] Tagihan terlihat dengan nominal

  3. [ ] Pembayaran bisa diakses
  4. [ ] Invoice bisa download
  5. [ ] Konfirmasi → status "Selesai" (done)

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-016 · Daftar Ulang Gratis · P1

Prasyarat: is_paid_admission = false

  • [ ] TIDAK ada section tagihan
  • [ ] Langsung "Konfirmasi Daftar Ulang" → done

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-017 · Status Cadangan (Waitlist) · P1

Prasyarat: State pending

  • [ ] Label "Cadangan" terlihat
  • [ ] Info posisi cadangan (jika ada)
  • [ ] TIDAK ada tombol "Daftar Ulang"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-018 · Status Ditolak · P1

Prasyarat: State reject

  • [ ] Label "Ditolak" terlihat
  • [ ] Alasan penolakan (jika ada)
  • [ ] Tidak ada tombol aksi
  • [ ] Link pengaduan terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-019 · Logout & Session Expired · P1

# Coba Harapan
a Klik Logout /spmb/login, session bersih
b Akses /spmb/admission/<id> setelah logout /spmb/login
c Tab idle 30+ menit, lalu klik navigasi → login + "Sesi berakhir"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


PEND-020 · Responsif Mobile · P2

  1. Resolusi 375px → buka detail pendaftaran, navigasi tab, coba simpan

  2. [ ] Tab scrollable/dropdown

  3. [ ] Form bisa diisi
  4. [ ] Tombol terlihat
  5. [ ] Tidak overflow

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


6. ADMIN (Operator SPMB)

Login sebagai Admin di Incognito terpisah.


ADM-001 · Dashboard · P0

URL: /admin/spmb/dashboard

  • [ ] Dashboard termuat
  • [ ] Statistik: total pendaftar, per status, per jalur
  • [ ] Angka konsisten (total = sum per status)

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-002 · Daftar Gelombang · P0

URL: /admin/spmb/periode

  • [ ] Tabel gelombang: nama, tanggal, status, jumlah pendaftar
  • [ ] Badge status berwarna
  • [ ] Klik baris → navigasi ke daftar pendaftar

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-003 · Tambah Gelombang · P0

  1. Klik "Tambah" → Isi modal (nama, tahun ajaran, semester, tanggal, jenjang, jalur+kuota) → Simpan

  2. [ ] Modal form lengkap

  3. [ ] Dropdown dari master data
  4. [ ] Jalur + kuota bisa ditambah
  5. [ ] Simpan → muncul di tabel, status "Draft"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-004 · Edit Gelombang · P1

  1. Klik edit (pensil) → Ubah nama/tanggal → Simpan

  2. [ ] Modal edit dengan data existing

  3. [ ] Simpan → data ter-update

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-005 · Hapus Gelombang · P0

# Skenario Harapan
a Hapus draft tanpa pendaftar Berhasil
b Hapus done tanpa pendaftar Berhasil
c Hapus cancel tanpa pendaftar Berhasil
d Hapus application (aktif) Tombol hapus TIDAK muncul
e Hapus done + ada pendaftar Tombol hapus TIDAK muncul
  • [ ] Dialog konfirmasi sebelum hapus
  • [ ] Error message informatif (bukan generic)

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-006 · Ubah Status Gelombang · P0

  1. Klik menu status → Ubah: Draft → Confirm → Application → Done

  2. [ ] Transisi valid berhasil

  3. [ ] Transisi tidak valid ditolak

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-007 · Daftar Pendaftar dalam Gelombang · P0

URL: /admin/spmb/periode/register/<id>/applications

  • [ ] Tabel: nama, no pendaftaran, jalur, status, tanggal
  • [ ] Filter by status/jalur tersedia
  • [ ] Klik baris → detail
  • [ ] Tombol Export (CSV)
  • [ ] Tombol "Hitung Ranking"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-008 · Transisi State Pendaftar · P0

URL: /admin/spmb/periode/admission/<id> · Estimasi: 10 min

# State Awal → Aksi → State Akhir
a submit → Konfirmasi Data → confirm
b confirm → Terima → admission
c confirm → Cadangkan → pending
d pending → Terima dari Cadangan → admission
e admission → Enroll Siswa → done
f draft–pending → Tolak → reject
  • [ ] Setiap transisi: status header berubah, tombol berubah, notifikasi sukses

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-009 · Verifikasi Dokumen · P0

  1. Detail pendaftar → tab Dokumen
  2. Preview → Verifikasi → Tolak (pada dokumen lain)

  3. [ ] Preview bisa dibuka

  4. [ ] Verifikasi → badge "Terverifikasi"
  5. [ ] Tolak → dialog alasan → badge "Ditolak"
  6. [ ] Download berfungsi

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-010 · Ranking · P0

URL: /admin/spmb/ranking

  • [ ] Tabel: peringkat, nama, skor, status
  • [ ] Urutan skor tertinggi
  • [ ] Filter gelombang tersedia
  • [ ] Klik baris → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-011 · Hitung Ulang Ranking · P1

  1. Daftar pendaftar → Klik "Hitung Ranking"

  2. [ ] Loading indicator

  3. [ ] Notifikasi "Ranking berhasil dihitung ulang"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-012 · Promote Cadangan · P1

Prasyarat: Ada pendaftar state pending

  1. Klik "Promote Cadangan" → Konfirmasi

  2. [ ] Dialog jumlah yang di-promote

  3. [ ] Cadangan → admission
  4. [ ] Notifikasi sukses

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-013 · Hub Tes + 4 Sub-Halaman · P1

# URL
a /admin/spmb/test (Hub)
b /admin/spmb/test/schedule (Jadwal)
c /admin/spmb/test/types (Jenis Tes)
d /admin/spmb/test/participants (Peserta)
e /admin/spmb/test/results (Hasil)
  • [ ] Semua termuat, tidak 404

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-014 · Buat Jadwal Tes · P0

URL: /admin/spmb/test/schedule · Estimasi: 5 min

  1. Klik "Buat Jadwal Baru" → Isi: Gelombang, Jenis Tes, Tanggal, Jam 08:00–10:00, Lokasi, Kapasitas 30 → Simpan

  2. [ ] Dropdown gelombang & jenis tes terisi

  3. [ ] Simpan → jadwal muncul di grid
  4. [ ] Card: nama, tanggal, lokasi, kapasitas 0/30

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-015 · Auto-Assign Peserta Saat Konfirmasi · P0

Prasyarat: Jadwal tes open + gelombang dengan tes · Estimasi: 10 min

  1. Detail pendaftar submit → Klik "Konfirmasi"
  2. Buka jadwal tes → tab Peserta

  3. [ ] Pendaftar otomatis muncul di tab Peserta

  4. [ ] Jumlah peserta di card bertambah
  5. [ ] Pendaftar menerima notifikasi jadwal tes

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-016 · Sync CBT + Kehadiran + Nilai · P1

Prasyarat: Jadwal linked ke CBT

  1. Tab CBT → "Sync Peserta"
  2. Tab Peserta → "Hadir" pada satu peserta
  3. Card → "Sync Nilai"

  4. [ ] Sync peserta berhasil

  5. [ ] "Hadir" → status + timestamp berubah
  6. [ ] Sync nilai → skor CBT muncul

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-017 · Pengaduan · P1

URL: /admin/spmb/complaints

  1. Klik baris → detail
  2. Proses (state → in_progress)
  3. Selesaikan (→ resolved) atau Tolak (→ rejected)

  4. [ ] Daftar / "Belum ada"

  5. [ ] Detail terbuka
  6. [ ] Transisi berhasil

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


ADM-018 · Konfigurasi (7 Halaman) · P1

# URL
a /admin/spmb-config
b /admin/spmb-config/education-levels
c /admin/spmb-config/pathways
d /admin/spmb-config/document-types
e /admin/spmb-config/scholarship-types
f /admin/spmb-config/parent-relationships
g /admin/spmb-config/sic
  • [ ] Semua termuat, data atau "Belum ada data"

Status: ☐ PASS ☐ FAIL ☐ SKIP · Catatan: ___


7. ADMIN STAFF (Tata Usaha)

Login sebagai Admin Staff.


AS-001 · Dashboard · P0

URL: /admin-staff/admissions/dashboard

  • [ ] Dashboard termuat, statistik terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-002 · Ranking · P0

URL: /admin-staff/admissions/ranking

  • [ ] Tabel ranking terlihat · Klik baris → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-003 · Periode & Drill-Down · P1

URL: /admin-staff/admissions/periods

  • [ ] Daftar gelombang → klik → daftar pendaftar → klik → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-004 · Tes (5 Halaman) · P1

# URL
a /admin-staff/admissions/test
b /admin-staff/admissions/test/schedule
c /admin-staff/admissions/test/types
d /admin-staff/admissions/test/participants
e /admin-staff/admissions/test/results

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-005 · Pengaduan · P1

URL: /admin-staff/admissions/complaints

  • [ ] Daftar terlihat · Klik → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-006 · Tidak Bisa CRUD Gelombang · P1

  • [ ] Di /admin-staff/admissions/periods: TIDAK ada tombol Tambah/Hapus gelombang

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-007 · Export Data · P2

  • [ ] Tombol Export di daftar pendaftar → file ter-download

Status: ☐ PASS ☐ FAIL ☐ SKIP


AS-008 · Tidak Bisa Akses Konfigurasi · P1

  • [ ] Buka /admin/spmb-config → redirect / forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


8. KEPALA SEKOLAH

Login sebagai Kepala Sekolah. Akses read-only.


PR-001 · Dashboard · P0

URL: /principal/admissions/dashboard

  • [ ] Dashboard + statistik termuat

Status: ☐ PASS ☐ FAIL ☐ SKIP


PR-002 · Ranking · P0

URL: /principal/admissions/ranking

  • [ ] Tabel ranking terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP


PR-003 · Periode & Drill-Down · P1

URL: /principal/admissions/periods

  • [ ] Gelombang → pendaftar → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


PR-004 · Tidak Ada Tombol Aksi · P1

  • [ ] Di detail pendaftar: TIDAK ada Konfirmasi/Terima/Tolak

Status: ☐ PASS ☐ FAIL ☐ SKIP


PR-005 · Tidak Bisa Akses Route Admin/Config · P1

  • [ ] /admin/spmb/dashboard → redirect/forbidden
  • [ ] /admin/spmb-config → redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


9. WAKA KESISWAAN

Login sebagai Waka Kesiswaan.


VPSA-001 · Dashboard · P0

URL: /vice-principal/student-affairs/admissions/dashboard

  • [ ] Dashboard termuat

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPSA-002 · Ranking · P0

URL: /vice-principal/student-affairs/admissions/ranking

  • [ ] Tabel ranking · Klik → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPSA-003 · Periode & Drill-Down · P1

URL: /vice-principal/student-affairs/admissions/periods

  • [ ] Gelombang → pendaftar → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPSA-004 · Detail Pendaftar · P1

  • [ ] Data pribadi, dokumen, ranking terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPSA-005 · Tidak Ada Aksi Edit · P1

  • [ ] TIDAK ada tombol transisi state

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPSA-006 · Tidak Bisa Akses Admin Route · P1

  • [ ] /admin/spmb/dashboard → redirect/forbidden
  • [ ] /admin/spmb-config → redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


10. WAKA HUMAS

Login sebagai Waka Humas.


VPPR-001 · Dashboard (via PPDB redirect) · P0

URL: /vice-principal/public-relations/ppdb

  • [ ] Redirect ke dashboard SPMB
  • [ ] Dashboard termuat

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPPR-002 · Ranking · P0

URL: /vice-principal/public-relations/admissions/ranking

  • [ ] Tabel ranking terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPPR-003 · Periode & Drill-Down · P1

URL: /vice-principal/public-relations/admissions/periods

  • [ ] Gelombang → pendaftar → detail

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPPR-004 · Detail Pendaftar · P1

  • [ ] Detail lengkap terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPPR-005 · Tidak Ada Aksi Edit · P1

  • [ ] TIDAK ada tombol transisi state

Status: ☐ PASS ☐ FAIL ☐ SKIP


VPPR-006 · Tidak Bisa Akses Admin Route · P1

  • [ ] /admin/spmb/dashboard → redirect/forbidden
  • [ ] /admin/spmb-config → redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


11. KEAMANAN AKSES (RBAC)

Tes isolasi antar role.


RBAC-001 · Tanpa Login → Route Pendaftar · P0

Buka Incognito:

URL Expected
/spmb/admission/new /spmb/login
/spmb/admission/1 /spmb/login
/spmb/admission/1/documents /spmb/login
/spmb/admission/1/enrollment /spmb/login
/spmb/cbt /spmb/login

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-002 · Tanpa Login → Route Admin · P0

URL Expected
/admin/spmb/dashboard /login
/admin/spmb/ranking /login
/admin/spmb/periode /login
/admin/spmb-config /login

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-003 · Pendaftar → Route Admin · P0

Login pendaftar:

URL Expected
/admin/spmb/dashboard Redirect/forbidden
/admin/spmb/ranking Redirect/forbidden
/admin/spmb/periode Redirect/forbidden
/admin/spmb-config Redirect/forbidden
/admin/spmb/complaints Redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-004 · Admin → Route Pendaftar · P1

Login admin:

URL Expected
/spmb/admission/1 Redirect ke admin dashboard
/spmb/admission/new Redirect ke admin dashboard
/spmb/cbt Redirect ke admin dashboard

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-005 · Admin Staff → Konfigurasi · P1

Login admin staff:

URL Expected
/admin/spmb-config Redirect/forbidden
/admin/spmb/proctor Redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-006 · Kepala Sekolah → Route Admin · P1

Login kepsek:

  • [ ] /admin/spmb/dashboard → redirect/forbidden
  • [ ] /admin/spmb/test/schedule → redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-007 · Waka → Route Admin · P1

Login waka (kesiswaan atau humas):

  • [ ] /admin/spmb/dashboard → redirect/forbidden
  • [ ] /admin/spmb-config → redirect/forbidden

Status: ☐ PASS ☐ FAIL ☐ SKIP


RBAC-008 · Akses Pendaftaran Orang Lain · P0

Login pendaftar A, coba akses admission milik pendaftar B:

  1. Buka /spmb/admission/<id_milik_B>

  2. [ ] Redirect / forbidden / "Anda tidak memiliki akses"

  3. [ ] Data pendaftar B TIDAK terlihat

Status: ☐ PASS ☐ FAIL ☐ SKIP


12. ERROR & EDGE CASES

Skenario tidak biasa yang harus ditangani dengan baik.


EDGE-001 · Double Submit · P0

  1. Klik "Submit Pendaftaran" → saat loading, klik lagi

  2. [ ] Tidak terjadi duplikasi

  3. [ ] Tombol disabled saat loading
  4. [ ] Hanya 1 submit terproses

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-002 · Double Klik Simpan · P1

  1. Di form data pribadi, klik "Simpan" 2x cepat

  2. [ ] Tidak error / duplikasi

  3. [ ] Data tersimpan 1x

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-003 · Backend Down / Maintenance · P1

  1. (Simulasi) Matikan backend → coba buka halaman

  2. [ ] Pesan error user-friendly ("Tidak dapat terhubung ke server")

  3. [ ] BUKAN halaman putih atau error teknis

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-004 · Upload File 0 Byte · P2

  1. Upload file kosong (0 byte)

  2. [ ] Error "File kosong" atau "File tidak valid"

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-005 · NIK/KK Dengan Huruf · P1

  1. Di form data pribadi, isi NIK = 12345678901234AB

  2. [ ] Validasi: "NIK harus 16 digit angka"

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-006 · Tanggal Lahir Masa Depan · P1

  1. Isi tanggal lahir = tanggal besok

  2. [ ] Tidak bisa dipilih / error validasi

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-007 · XSS di Input Text · P1

  1. Di nama lengkap, isi: <script>alert('xss')</script>

  2. [ ] Input di-sanitize / escape

  3. [ ] TIDAK muncul dialog alert saat view
  4. [ ] Text ditampilkan apa adanya

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-008 · Gelombang Sudah Tutup · P1

Prasyarat: Gelombang state done atau tanggal tutup sudah lewat

  1. Coba akses /spmb/admission/new → pilih gelombang tersebut

  2. [ ] Gelombang tidak muncul / disabled / pesan "sudah ditutup"

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-009 · Concurrent State Transition · P1

  1. Buka detail pendaftar di 2 tab browser
  2. Di tab 1: klik "Konfirmasi"
  3. Di tab 2: klik "Konfirmasi" (setelah tab 1 selesai)

  4. [ ] Tab 2: error "Status sudah berubah" atau refresh otomatis

  5. [ ] BUKAN duplikasi transisi

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-010 · Refresh Halaman Saat Proses · P1

  1. Sedang proses simpan → tekan F5

  2. [ ] Setelah refresh: data konsisten (tersimpan atau belum, tapi tidak corrupt)

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-011 · Multi Pendaftaran (Satu Akun) · P1

  1. Login pendaftar yang sudah punya 1 pendaftaran aktif
  2. Coba buat pendaftaran baru di gelombang berbeda

  3. [ ] Bisa (jika diizinkan) → 2 pendaftaran terlihat

  4. [ ] ATAU pesan "Anda sudah terdaftar"

Status: ☐ PASS ☐ FAIL ☐ SKIP


EDGE-012 · Proktor Dashboard · P1

URL: /admin/spmb/proctor

  • [ ] Halaman termuat (pilih jadwal / "Pilih jadwal")
  • [ ] Tidak 404

Status: ☐ PASS ☐ FAIL ☐ SKIP


13. Formulir Tanda Tangan

Item Detail
Tanggal UAT _ / ___ / 2026
Penguji _______
Environment ☐ Development ☐ Staging ☐ Production
Browser _______
Versi Aplikasi _______

Ringkasan Hasil

Kategori Total Pass Fail Skip
Public 12
Pendaftar 20
Admin 18
Admin Staff 8
Kepala Sekolah 5
Waka Kesiswaan 6
Waka Humas 6
RBAC 8
Error & Edge 12
TOTAL 95

Keputusan

  • [ ] LULUS — Semua P0 PASS, tidak ada blocker
  • [ ] LULUS BERSYARAT — Semua P0 PASS, ada minor issue di backlog
  • [ ] GAGAL — Ada P0 FAIL, perlu perbaikan sebelum go-live

Catatan Keputusan:


Tanda Tangan Penguji: ____
Tanda Tangan Penanggung Jawab:
____