Skip to content

End-to-end user flow + performance/regression tests: configure API key in OpenSID UI, submit data to OpenDK, rate-limit & perf checks #1677

Description

@analisopendesa

Pengujian E2E memvalidasi jalur pengguna lengkap: admin masuk ke OpenSID, mengkonfigurasi/mengatur kunci API OpenDK di pengaturan, memicu tindakan "kirim data" yang mengirimkan data ke OpenDK, dan memastikan penyedia menerima payload yang benar. Tambahkan pengujian kinerja/regresi (ringan) untuk endpoint: perilaku pembatasan laju dan pemeriksaan latensi p95 dalam pekerjaan terjadwal.

Ruang lingkup

  • Uji E2E (menggunakan Playwright atau Pest Browser) yang mengotomatisasi langkah-langkah berikut:
    - Login sebagai admin OpenSID
    - Navigasi ke pengaturan integrasi
    - Mengatur kunci API (gunakan kunci uji coba/test key)
    - Picu pengiriman data (melalui UI atau API) dan pastikan OpenDK menerima permintaan tersebut (baik melalui mock server maupun melalui staging OpenDK sementara serta pemeriksaan basis data).

  • Tambahkan skrip performa/regresi sederhana (k6 atau k6-lite) untuk menjalankan uji beban (load test) serta memastikan nilai p95 dan tingkat kesalahan (error rate) berada di bawah ambang batas yang ditentukan.

  • Tambahkan tugas terjadwal (opsional) untuk menjalankan tugas pengujian performa setiap malam atau saat penggabungan (merge) ke cabang utama (main).

Acceptance criteria (terukur) :

  • Pengujian E2E berhasil dijalankan di CI dalam lingkungan ephemeral (atau menggunakan mock provider).

  • Pengujian memvalidasi happy path serta setidaknya dua kasus negatif (kunci tidak valid, kunci yang telah dicabut).

  • Pengujian performa menghasilkan metrik dan berstatus gagal jika:

    • p95 > 500ms (dapat dikonfigurasi) atau tingkat kesalahan > 0,1% untuk endpoint inti.
  • Dokumentasikan cara menjalankan pengujian E2E secara lokal dan di CI dalam berkas docs/integration-testing.md.

langkah spesifik

  • Buat pengujian Playwright atau Pest Browser untuk alur konfigurasi dan pengiriman (configure+send flow).
  • Implementasikan mock endpoint di sisi penyedia untuk pengujian E2E di CI guna memverifikasi payload yang diterima (atau gunakan instans OpenDK sementara dan periksa basis data).
  • Tambahkan skrip k6 untuk pengujian throughput yang ringan dan integrasikan penjadwalannya ke dalam GitHub Actions (opsional).
  • Tambahkan job CI (bersifat wajib atau opsional) yang menjalankan pengujian E2E di lingkungan sementara; tandai sebagai wajib atau opsional bergantung pada runtime-nya.

Metadata

Metadata

Assignees

Labels

Tipe: TeknisPerubahan teknis tanpa merubah tampilan/fungsionalitas

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions