LMS B2B Dibimbing
Diaz Aryanta
Education
Diaz Aryanta
Universitas Gunadarma - Manajemen Sistem Informasi Bisnis
Pengujian otomatis website menggunakan selenium
Web Automation
Pengujian otomatis mobile menggunakan appium
Android Automation
Pengujian otomatis E2E saucedemo dengan selenium
Saucedemo Automation
Pengujian otomatis E2E Testing UI & API dengan selenium, extend reports
Resonance Automation
Working
PT Dusdusan Dotcom Indonesia - Quality Assurance Tester
Overview Project
Problem Statement
Pendahuluan
LMS B2B Dibimbing (Resonance) adalah platform pembelajaran. Fokus pengujian mencakup Login, modul Employee List, dan modul Program Studi.
Pernyataan Masalah
Risiko kualitas muncul jika fitur tidak berfungsi, menyebabkan kegagalan sistem. Pembaruan yang sering memerlukan suite regresi agar perubahan tidak merusak fungsionalitas.
Ringkasan Proyek
Risiko Kualitas
Critical Blocker
Kegagalan akses login yang dapat menghentikan proses login secara terus menerus.
Delay Employee Dashboard
Waktu pemrosesan halaman employee list sangat lama.
68.5%
OVERALL PASS RATE
37 Berhasil / 17 Gagal
Ringkasan Hasil Pengujian
Analisis UI (Frontend)
Critical Issue: Negative Flow
Kegagalan pada (15 test) terdeteksi saat sistem diberikan input tidak valid.
Temuan Utama
Add Employee: Gagal menangani input kosong.
Program Studi: Pesan error tidak muncul.
Error Handling: Belum ada umpan balik visual bagi user.
Analisis API (Backend)
Status: Stabil
Mayoritas mutasi dan kueri GraphQL berjalan sesuai spesifikasi teknis.
Penyebab Root Cause
2 Kegagalan pada Program Studi.
API menerima input empty name & empty description.
Celah validasi pada logic business backend yang belum menerapkan mandatory check pada level skema mutation.
Stack Teknologi
Java & Selenium
Memanfaatkan WebDriver dan POM untuk automasi UI yang skalabel dan reusable skrip.
REST Assured
Validasi API berfokus pada struktur endpoint tunggal GraphQL dan akurasi respons JSON.
TestNG & Gradle
Memastikan eksekusi standar, manajemen dependensi efisien, dan pelaporan terstruktur.
Requirement & Test Plan
Acceptance Criteria UI
Login Page: Admin harus bisa autentikasi dengan kredensial valid dan diarahkan ke Dashboard.
Employee List: Menambah karyawan baru, pencarian data, hingga fitur ekspor CSV.
Program Studi: Pengelolaan data akademik dan verifikasi daftar program studi secara akurat.
Detail Action: Fitur Edit, Inactivate, dan Resend Email Account harus berfungsi stabil.
Acceptance Criteria API
Login Mutation: Validasi endpoint /graphql untuk memastikan mutation login menangkap cookie.
JSON Structure: Memastikan respons body mengandung objek "data" dan tidak terdapat "errors".
Integritas Data: Penambahan karyawan melalui API harus ter-render secara sinkron di UI Dashboard.
GraphQL Query: Validasi pengambilan data list karyawan dengan struktur skema yang benar.
Tools QA yang Digunakan
Selenium
Framework utama untuk automasi pengujian antarmuka (UI) menggunakan Page Object Model (POM).
RestAssured
Library Java untuk validasi API Backend yang mendukung protokol GraphQL secara native.
Postman
Digunakan untuk pengujian API manual, eksplorasi payload, dan verifikasi struktur JSON.
Ruang Lingkup Pengujian
Modul Auth
Validasi form Login UI dan mutasi GraphQL untuk aksesibilitas dan keamanan Admin.
Modul Employee List
Pengujian operasi CRUD: Tambah, Cari, Filter, Aktivasi, dan fungsi Ekspor/Unduh data.
Modul Program Studi
Pengujian operasi CRUD: Tambah, Cari, Ubah, dan Hapus.
Activity Diagram
Dikarenakan diagram terlalu besar maka diagram dapat dilihat pada link dibawah
Activity Diagram
app.diagram
Overview :
Manual Testing
Manual Testing
Memahami Perilaku
Fase krusial untuk memetakan alur bisnis dan User Experience sebelum skrip automation dibangun.
Manual testing membantu mengidentifikasi celah logika yang sering terlewat oleh mesin.
Strategi Pengujian Manual
Exploratory & Usability
Melakukan validasi aspek visual pada form antarmuka, interaksi kolom wajib, dan dropdown filter secara manual.
Memastikan sinkronisasi data antar modul sebelum tahap automation dimulai.
Modul | Skenario | Status |
Auth | Login Kredensial Valid | PASS |
Employee | CRUD Valid Data | PASS |
Employee (Negative Flow) | Input Kosong / Edge Case | FAIL |
Program Studi | CRUD Valid Data | PASS |
Program Studi (Negatif Flow) | Input Kosong / Edge Case | FAIL |
API | Program Studi Validation | FAIL |
Detail Hasil Skenario
Temuan Bug Kritis
BUG-001-EMP (UI)
Input kosong / edge case
BUG-001-PS (UI)
BUG-002-PS (API)
Berhasil input data kosong dan muncul di program studi
Input kosong / edge case
Automation Testing
Automation UI (Frontend)
Framework: Java + Selenium + Page Object Model (POM).
Manual Sebagai Fondasi
Sebelum skrip automasi dibangun, Manual Testing krusial untuk:
Memahami alur bisnis & perilaku sistem.
Identifikasi skenario Edge Case.
Validasi UX Readiness.
Cakupan Pengujian UI
Login Page: Validasi kredensial admin dan pengalihan ke dashboard utama.
Employee List: Pengujian CRUD (Tambah, Edit, Hapus) dan fitur pencarian Employee.
Export CSV: Verifikasi keberhasilan unduhan data list karyawan ke folder lokal.
Program Studi: Pengujian CRUD (Tambah, Edit, Hapus) dan fitur pencarian Program Studi
Export CSV: Verifikasi keberhasilan unduhan data list program studi ke folder lokal.
Extend Report Frontend
Hasil Eksekusi UI
Pengujian dilakukan pada lingkungan macOS dengan browser Chrome.
18 Tests Passed
15 Failed
Automation API (Backend)
Framework: Java + RestAssured + GraphQL Mutation Validation.
Logika Validasi API
JSON Schema
Memastikan struktur respons data sesuai dengan kontrak skema GraphQL.
Cookie Session
Verifikasi mutation login berhasil menangkap cookie session.
Data Integrity
Validasi operasional Employee melalui endpoint GraphQL tanpa intervensi UI.
Extend Report Backend
Hasil Eksekusi API
Pengujian dilakukan pada lingkungan macOS dengan browser Chrome.
19 Tests Passed
2 Failed
Metrik Performa Akhir
37
TOTAL PASS RATE
Ringkasan Stabilitas
Automation berhasil memangkas waktu regresi sistem dari jam (manual) menjadi hitungan menit.
100% UI Functional Stability.
API Edge-case Identification.
Regression Testing
Apa itu Regression Testing?
Tujuan Utama
Mendokumentasikan evolusi status pengujian dari fase Manual ke fase Otomatis demi menjaga kualitas LMS B2B Dibimbing..
Re-Testing: Memastikan perbaikan bug (fix) benar-benar berhasil.
Zero Impact: Menjamin kode baru tidak merusak fitur lama yang sudah stabil.
Stabilitas: Memberikan gambaran akurat mengenai kesehatan aplikasi pasca-perubahan.
Fitur | Status Awal (Manual) | Status Regresi (Otomatis) |
Login (Kredensial Valid) | Pass | Pass |
Add New Employee (Valid Data) | Pass | Pass |
Search & Filter Employee | Pass | Pass |
Add Program Studi | Pass | Pass |
Regression Report: UI (Frontend)
Fitur | Status Awal (Manual) | Status Regresi (Otomatis) |
Login Mutation | Pass | Pass |
Add Employee (CRUD) | Pass | Pass |
Add Program Studi (CRUD) | Pass | Pass |
Search, Resend Email, Export CSV. | Pass | Pass |
Regression Report: API (GraphQL)
Reporting & Dashboard
Ringkasan Defect Temuan
Data menunjukkan korelasi antara 15 kegagalan UI dan 2 kegagalan API terkait validasi.
17
TOTAL BUG
8
OPEN
5
RESOLVED
4
CLOSED/REOPEN
Volume Temuan Bug
17
TOTAL DEFECT
Urgensi Perbaikan
Seluruh temuan dari 54 skenario pengujian masuk ke dalam klasifikasi Critical/High Severity.
Dampak API
Kegagalan pada validasi backend mutation (Empty name & Description).
Dampak UI
Kegagalan massal pada Negative Flow modul Employee & Program Studi.
Distribusi Severity
Status Pengerjaan Bug
Conclusion & Recommendation
Rangkuman Temuan Utama
Secara garis besar, sistem sudah aman dan stabil untuk penggunaan normal (Happy Path).
Masalah utama muncul saat sistem menerima input yang tidak biasa atau form dikosongkan sengaja.
37 Lulus
Alur utama sistem berjalan lancar.
17 Gagal
Masalah pada validasi data.
Masalah Paling Kritis
Celah Validasi Data
Sistem masih mengizinkan data kosong (nama & deskripsi) masuk ke database, baik lewat tampilan (UI) maupun lewat sistem belakang (API).
Dampak Buruk
Laporan perusahaan bisa berantakan dan sistem berisiko error berat jika data yang wajib diisi malah kosong.
Saran Untuk Peningkatan
Perkuat Sisi Depan (UI)
Pasang peringatan otomatis di setiap form agar user tidak bisa menekan tombol 'Simpan' jika ada kolom yang belum diisi.
Perketat Sisi Belakang (API)
Sistem harus otomatis menolak kiriman data jika ada field wajib yang kosong, jangan dibiarkan lolos ke database.
Rencana Kedepan
Automation Full-Cycle:
Setiap ada perubahan kode baru dari developer, sistem tes otomatis ini harus langsung berjalan sendiri (CI/CD).
Tujuannya agar kita tahu detik itu juga jika ada fitur lama yang rusak akibat kode baru.
Terima
Kasih.