Skip to content

feat: smoke Test dengan Pest Browser di modul Informasi#1587

Open
habibie11 wants to merge 5 commits into
rilis-devfrom
dev-1584
Open

feat: smoke Test dengan Pest Browser di modul Informasi#1587
habibie11 wants to merge 5 commits into
rilis-devfrom
dev-1584

Conversation

@habibie11

@habibie11 habibie11 commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

issue #1584

Deskripsi

Tarik Permintaan (Pull Request) ini mengimplementasikan Smoke Testing secara menyeluruh (Automated Browser Testing) menggunakan framework Pest dan plugin browser Playwright untuk 12 submenu di dalam modul Informasi.

Perubahan yang Dilakukan

  • Menambahkan test suite tests/Browser/SmokeInformasiTest.php yang mencakup 12 submenu Informasi secara dinamis melalui teknik Pest Datasets.
  • Menginjeksikan identifier data-testid pada tabel di masing-masing modul dan komponen antarmuka (resources/views/forms/aksi.blade.php, resources/views/forms/btn-social.blade.php) untuk mempermudah penargetan selektor pada browser testing.
  • Menerapkan logika injeksi dummy data (Seeder/Factory) yang sesuai dengan spesifikasi dan batasan constraint database (terutama pengisian spesifik atribut wajib seperti mime_type, deskripsi, lokasi, dan file_regulasi). Khusus untuk komponen Media Terkait, kami membuat cadangan sampel gambar statis secara dinamis agar terhindar dari HTTP 404 Exception selama pengetesan.
  • Bug Fix (Controller): Membetulkan kesalahan ejaan nama izin (permission) di Controller Artikel Kategori (access.informasi.artikel_kategori.edit) dan Komentar Artikel (access.informasi.komentar_artikel.delete) yang sebelumnya keliru menggunakan karakter hubung (dash).
  • Bug Fix (Frontend Livewire): Menambal kendala kompatibilitas legacy code pada layout app.blade.php dan komponen alert components/swal-delete.blade.php yang menyebabkan hambatan eksekusi Javascript (Cannot read properties of undefined (reading 'on')). Kami mengubah pemanggilan window.livewire.on dengan deteksi fallback ke objek global Livewire yang sudah mendukung ekosistem Livewire v3.
  • Optimasi (Session Restoration): Mengintegrasikan fitur bypass pengisian formulir autentikasi ke setiap proses visit() berulang menggunakan helper SessionState::loginAndNavigate(). Ini memotong signifikan overhead durasi pengetesan dari ~60 detik ke rata-rata ~18 detik.

Submenu yang Diuji (12/12 Lolos)

  • Prosedur
  • Regulasi
  • Potensi
  • Event
  • Artikel
  • Artikel Kategori
  • Komentar Artikel
  • FAQ
  • Dokumen
  • Media Sosial
  • Sinergi Program
  • Media Terkait (Livewire)

Cara Menguji (Testing)

Jalankan perintah Artisan di bawah ini di dalam terminal lokal Anda untuk memverifikasi secara langsung:

# Menjalankan keseluruhan Menu Informasi
php artisan test tests/Browser/SmokeInformasiTest.php

# Menjalankan spesifik satu menu saja (misal Media Terkait)
php artisan test tests/Browser/SmokeInformasiTest.php --filter="Media Terkait"

Referensi & Status Kelulusan

image

@github-actions

Copy link
Copy Markdown

🔄 AI PR Review sedang antri di server...

Proses review akan segera dimulai di background — hasil akan muncul sebagai komentar setelah selesai.
Powered by CrewAI · PR #1587

@habibie11 habibie11 requested a review from affandii06 June 17, 2026 07:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant