Repository ini berisi skenario pengujian otomatis untuk aplikasi FoodFast (aplikasi pemesanan makanan).
- Node.js v18+
- Google Chrome
- Git
https://github.com/jefryKurniawan/FoodFast.git
cd FoodFast
npm install
npx playwright installSemua tes
npm testTes Spesifik
npx playwright test tests/1.login.spec.tsGenerate Laporan HTML
npx playwright show-report- Tujuan : Verifikasi sistem bisa menangani login valid/invalid
- file : 1.login.spec.ts
- Cakupan :
- login dengan email & password valid
- login dengan password salah
- validasi pesan error
- Tujuan : Memastikan fitur pencarian restoran bekerja
- file : 2.search.spec.ts
- Cakupan :
- pencarian dengan keyword valid
- pencarian dengan keyword tidak valid
- auto-suggest saat ketik
- Tujuan : Validasi CRUD item keranjang
- file : 3.cart.spec.ts
- Cakupan :
- tambah item
- hapus item
- update jumlah item
- kalkulasi total otomatis
- Tujuan : Verifikasi alur pembayaran digital
- file : 4.checkout.spec.ts
- Cakupan :
- pilih metode e-wallet
- redirect ke gateway pembayaran
- simulasi pembayaran sukses
- Tujuan : Validasi pembayaran via Virtual Account
- file : 5.payment.spec.ts
- Cakupan :
- generate VA number
- validasi format VA
- simulasi expired payment
- Tujuan : Pastikan notifikasi terkirim
- file : 6.notification.spec.ts
- Cakupan :
- notification in-app
- email konfirmasi
- Tujuan : Verifikasi sistem menangani error
- file : 6.error-handling.spec.ts
- Cakupan :
- pembayaran gagal
- API timeout
- input invalid
- Penyebab bug : Race condition saat update jumlah item
- Dampak bug bagi pengguna : Dampak pengguna membayar harga salah
- Prioritas = High
- Sarana perbaikan :
// atomic operation
await page.evaluate(() => {
updateCartItemQuantity(itemId, newQuantity);
});- Penyebab bug : Race condition di API Bank
- Dampak bug bagi pengguna : Pengguna tidak bisa bayar
- Prioritas = Critical
- Sarana perbaikan :
// mekanisme retry
async function generateVARetry(){
let retries = 3;
while(retries > 0) {
try {
return await generateVA();
} catch (error) {
retries--;
}
}
}- Penyebab bug : Header email tidak terkonfirmasi DKIM
- Dampak bug bagi pengguna : email masuk ke folder spam
- Prioritas = Medium
- Sarana perbaikan :
- validasi DNS record
- tambahkan domain authentication di SMTP
Project : FoodFast v1.0.0 Tester : QA Team Tanggal : 11 Februari 2025
Hasil Tes
| test case | status | keterangan |
|---|---|---|
| Login Valid | ✅ Passed | - |
| Login Invalid | ✅ Passed | - |
| Checkout E-Wallet | ❌ Failed | Error di Halaman konfirmasi |
| Generate VA | ✅ Passed | - |
| Notifikasi Email | ❗ Partial | Terkirim tapi delay 5 menit |
Pass Rate: 85% (17/20 test passed) Critical Bugs Found: 2