RENALDI
SMKN 1 BONE (Kab. Bone)
SP-28BCC860 • Teknologi Web
Total Skor
67
Progress
Katalog Publik - Akses Terbuka
Backend REST API
Klik Send pada URL Katalog Publik
Kondisi: Data seluruh produk muncul lengkap dengan info nama kategorinya
Isi kolom parameter search dengan nama produk
Kondisi: Hanya produk dengan nama tersebut yang berhasil tersaring
Isi kolom parameter kategori_id dengan angka ID
Kondisi: Hanya produk dari kategori tersebut saja yang keluar
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 1.1 | Klik Send pada URL Katalog Publik Data seluruh produk muncul lengkap dengan info nama kategorinya |
3 | Tidak | 0 |
| 1.2 | Isi kolom parameter search dengan nama produk Hanya produk dengan nama tersebut yang berhasil tersaring |
3 | Tidak | 0 |
| 1.3 | Isi kolom parameter kategori_id dengan angka ID Hanya produk dari kategori tersebut saja yang keluar |
2 | Tercapai | 2 |
Otentikasi & Profil User
Backend REST API
Masukkan email & password seeder, klik Send
Kondisi: Keluar kode status 200 beserta teks token akses panjang
Sengaja salahkan password login, klik Send
Kondisi: Keluar kode status 201 disertai keterangan teks gagal
Klik Send pada URL Profil menggunakan token aktif
Kondisi: Muncul informasi detail Nama, Email, dan Role user yang login
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 2.1 | Masukkan email & password seeder, klik Send Keluar kode status 200 beserta teks token akses panjang |
3 | Tercapai | 3 |
| 2.2 | Sengaja salahkan password login, klik Send Keluar kode status 201 disertai keterangan teks gagal |
2 | Tercapai | 2 |
| 2.3 | Klik Send pada URL Profil menggunakan token aktif Muncul informasi detail Nama, Email, dan Role user yang login |
3 | Tidak | 0 |
Tambah & Tampilkan Produk - Khusus Superadmin
Backend REST API
Klik Send pada URL Data Produk (GET /api/produk)
Kondisi: Daftar seluruh produk muncul dalam format JSON khusus untuk internal manajemen admin
Kirim data produk baru tanpa mengisi nama/harga
Kondisi: Keluar respons status 201 (Sistem validasi backend aktif)
Kirim data produk lengkap + Lampirkan file gambar
Kondisi: Keluar kode status 200 dan data sukses tersimpan
Salin path gambar hasil upload, buka di browser
Kondisi: Gambar produk berhasil dipanggil dan tampil dengan jelas
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 3.1 | Klik Send pada URL Data Produk (GET /api/produk) Daftar seluruh produk muncul dalam format JSON khusus untuk internal manajemen admin |
2 | Tercapai | 2 |
| 3.2 | Kirim data produk baru tanpa mengisi nama/harga Keluar respons status 201 (Sistem validasi backend aktif) |
1 | Tercapai | 1 |
| 3.3 | Kirim data produk lengkap + Lampirkan file gambar Keluar kode status 200 dan data sukses tersimpan |
2 | Tercapai | 2 |
| 3.4 | Salin path gambar hasil upload, buka di browser Gambar produk berhasil dipanggil dan tampil dengan jelas |
5 | Tercapai | 5 |
Logika Transaksi & Riwayat Transaksi
Backend REST API
Klik Send pada URL Data Transaksi (GET /api/transaksi)
Kondisi: Daftar seluruh riwayat transaksi yang pernah terjadi di toko berhasil muncul dalam format JSON
Kirim data transaksi baru (isi kuantitas & diskon %)
Kondisi: Transaksi berhasil diproses masuk ke dalam data riwayat
Cek kalkulasi nota nilai harga yang keluar
Kondisi: Angka total harga terpotong persentase diskon secara akurat
Cek data kuantitas produk setelah transaksi sukses
Kondisi: Stok produk otomatis berkurang sesuai jumlah yang dibeli
Kirim data transaksi dengan jumlah melebihi stok
Kondisi: Transaksi otomatis digagalkan dan keluar pesan error stok
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 4.1 | Klik Send pada URL Data Transaksi (GET /api/transaksi) Daftar seluruh riwayat transaksi yang pernah terjadi di toko berhasil muncul dalam format JSON |
3 | Tercapai | 3 |
| 4.2 | Kirim data transaksi baru (isi kuantitas & diskon %) Transaksi berhasil diproses masuk ke dalam data riwayat |
2 | Tercapai | 2 |
| 4.3 | Cek kalkulasi nota nilai harga yang keluar Angka total harga terpotong persentase diskon secara akurat |
3 | Tidak | 0 |
| 4.4 | Cek data kuantitas produk setelah transaksi sukses Stok produk otomatis berkurang sesuai jumlah yang dibeli |
5 | Tidak | 0 |
| 4.5 | Kirim data transaksi dengan jumlah melebihi stok Transaksi otomatis digagalkan dan keluar pesan error stok |
3 | Tercapai | 3 |
Keamanan & Hak Akses Role
Backend REST API
Gunakan token akun Kasir untuk menyimpan produk
Kondisi: Sistem menolak aksi secara mutlak (Keluar kode error/403)
Hapus token di Postman, lalu akses URL internal admin
Kondisi: Akses terblokir total karena sistem mewajibkan token login
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 5.1 | Gunakan token akun Kasir untuk menyimpan produk Sistem menolak aksi secara mutlak (Keluar kode error/403) |
4 | Tercapai | 4 |
| 5.2 | Hapus token di Postman, lalu akses URL internal admin Akses terblokir total karena sistem mewajibkan token login |
4 | Tercapai | 4 |
Katalog Publik - Sisi Pelanggan
Frontend SPA Client
Buka Halaman Utama publik aplikasi peserta
Kondisi: Menu makanan/minuman muncul rapi dengan gambarnya
Ketik nama produk di kolom pencarian di layar
Kondisi: Daftar produk langsung tersaring otomatis saat mengetik
Klik pilihan filter kategori produk
Kondisi: Daftar menu otomatis berubah sesuai kategori yang diklik
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 6.1 | Buka Halaman Utama publik aplikasi peserta Menu makanan/minuman muncul rapi dengan gambarnya |
3 | Tidak | 0 |
| 6.2 | Ketik nama produk di kolom pencarian di layar Daftar produk langsung tersaring otomatis saat mengetik |
3 | Tercapai | 3 |
| 6.3 | Klik pilihan filter kategori produk Daftar menu otomatis berubah sesuai kategori yang diklik |
2 | Tidak | 0 |
Login Admin & Proteksi Halaman
Frontend SPA Client
Ketik email/password salah di halaman login
Kondisi: Muncul teks peringatan/notifikasi gagal di layar
Ketik email/password benar di halaman login
Kondisi: Berhasil masuk ke halaman Dashboard Utama Admin
Coba ketik manual URL dashboard di browser tanpa login
Kondisi: Sistem otomatis menolak dan melempar kembali ke login
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 7.1 | Ketik email/password salah di halaman login Muncul teks peringatan/notifikasi gagal di layar |
2 | Tercapai | 2 |
| 7.2 | Ketik email/password benar di halaman login Berhasil masuk ke halaman Dashboard Utama Admin |
3 | Tercapai | 3 |
| 7.3 | Coba ketik manual URL dashboard di browser tanpa login Sistem otomatis menolak dan melempar kembali ke login |
3 | Tercapai | 3 |
Tampilan Dashboard & Input Produk Baru
Frontend SPA Client
Lihat kotak statistik di Dashboard Utama
Kondisi: Angka total produk, transaksi, dll muncul dari backend
Buka halaman / menu Data Produk
Kondisi: Daftar seluruh produk dari database berhasil ditampilkan dalam bentuk tabel secara rapi
Buka Form Produk, klik simpan dalam kondisi kosong
Kondisi: Muncul tulisan error berwarna merah (Validasi form aktif)
Isi data produk, pilih file gambar, klik Simpan
Kondisi: Produk baru berhasil masuk dan langsung muncul di tabel tanpa refresh web
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 8.1 | Lihat kotak statistik di Dashboard Utama Angka total produk, transaksi, dll muncul dari backend |
2 | Tercapai | 2 |
| 8.2 | Buka halaman / menu Data Produk Daftar seluruh produk dari database berhasil ditampilkan dalam bentuk tabel secara rapi |
3 | Tercapai | 3 |
| 8.3 | Buka Form Produk, klik simpan dalam kondisi kosong Muncul tulisan error berwarna merah (Validasi form aktif) |
1 | Tidak | 0 |
| 8.4 | Isi data produk, pilih file gambar, klik Simpan Produk baru berhasil masuk dan langsung muncul di tabel tanpa refresh web |
4 | Tercapai | 4 |
Layar Kasir / POS Screen & Riwayat Transaksi
Frontend SPA Client
Klik tombol tambah pada salah satu produk menu
Kondisi: Produk langsung masuk ke daftar keranjang belanja
Klik tombol + atau - pada item di dalam keranjang
Kondisi: Jumlah barang dan subtotal harga berubah otomatis
Ketik angka nominal di kolom diskon % (misal: 10)
Kondisi: Total harga akhir langsung berkurang 10% di layar
Klik tombol Bayar / Selesai Transaksi
Kondisi: Muncul notifikasi sukses dan keranjang kembali kosong
Buka Halaman / Menu Riwayat Transaksi
Kondisi: Daftar transaksi yang baru saja dilakukan berhasil tampil di tabel riwayat lengkap dengan total harganya
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 9.1 | Klik tombol tambah pada salah satu produk menu Produk langsung masuk ke daftar keranjang belanja |
3 | Tercapai | 3 |
| 9.2 | Klik tombol + atau - pada item di dalam keranjang Jumlah barang dan subtotal harga berubah otomatis |
3 | Tidak | 0 |
| 9.3 | Ketik angka nominal di kolom diskon % (misal: 10) Total harga akhir langsung berkurang 10% di layar |
3 | Tercapai | 3 |
| 9.4 | Klik tombol Bayar / Selesai Transaksi Muncul notifikasi sukses dan keranjang kembali kosong |
3 | Tidak | 0 |
| 9.5 | Buka Halaman / Menu Riwayat Transaksi Daftar transaksi yang baru saja dilakukan berhasil tampil di tabel riwayat lengkap dengan total harganya |
4 | Tidak | 0 |
Pembatasan Role Tampilan & Hasil Akhir
Frontend SPA Client
Login menggunakan akun dengan role Kasir
Kondisi: Menu atau Tombol "Tambah Produk" hilang dari layar
Minta peserta menunjukkan folder programnya
Kondisi: Terdapat folder hasil kompilasi final (dist atau build)
Klik kanan browser -> pilih Inspect -> tab Console
Kondisi: Tidak ada baris teks error berwarna merah yang muncul
| Kode | Langkah Pengujian | Bobot | Status | Skor |
|---|---|---|---|---|
| 10.1 | Login menggunakan akun dengan role Kasir Menu atau Tombol "Tambah Produk" hilang dari layar |
3 | Tercapai | 3 |
| 10.2 | Minta peserta menunjukkan folder programnya Terdapat folder hasil kompilasi final (dist atau build) |
3 | Tercapai | 3 |
| 10.3 | Klik kanan browser -> pilih Inspect -> tab Console Tidak ada baris teks error berwarna merah yang muncul |
2 | Tercapai | 2 |