Cheatography
https://cheatography.com
User Story and User Scenario
This is a draft cheat sheet. It is a work in progress and is not finished yet.
Command Line (Behat)
--init |
Membuat direktori features |
--config=behat.yml |
Menggunakan file konfigurasi |
--format=html -out=report.html |
Membuat laporan format HTML |
--expand |
Menampilkan detail pengujian |
--tags='@warga' |
Menjalankan tes pada tag tertentu |
Feature & Scenario
Feature: Pengaduan Layanan |
In order to menyampaikan pengaduan |
As a WARGA |
I want to mengirimkan keluhan |
Scenario: Warga mengirimkan pengaduan layanan baru Given Warga berada di aplikasi pengaduan When Warga memilih menu "Lapor Keluhan" And Warga mengisi Formulir Pengaduan And Warga mengunggah Dokumen atau foto pendukung And Warga memilih opsi Mengirim Keluhan Layanan Then Sistem menampilkan konfirmasi pengaduan berhasil dikirim |
Mencakup use case: - Memilih menu "Lapor Keluhan" - Mengisi Formulir Pengaduan - Mengunggah Dokumen/foto pendukung - Mengirim Keluhan Layanan |
Scenario: Warga mengecek status keluhan Given Warga telah mengirimkan keluhan sebelumnya When Warga memilih opsi mengecek status keluhan Then Sistem menampilkan status proses keluhan saat ini |
Mencakup use case: - Mengecek status keluhan |
Scenario: Petugas meninjau keluhan yang masuk Given Petugas Pemerintah telah masuk ke sistem When Petugas memilih menu "Daftar Keluhan" And Petugas meninjau Keluhan Masyarakat And Petugas mengecek Kelengkapan Informasi Keluhan masyarakat Then Sistem menampilkan rincian informasi pengaduan |
Mencakup use case: - Memilih menu "Daftar Keluhan" - Meninjau Keluhan Masyarakat - Mengecek Kelengkapan Informasi |
Scenario: Petugas meminta kelengkapan informasi Given Informasi keluhan masyarakat belum lengkap When Petugas Meminta Detail Informasi kepada Masyarakat Then Sistem mengirim pemberitahuan permintaan data ke Warga |
Mencakup use case: - Meminta Detail Informasi kepada Masyarakat |
Scenario: Petugas memproses dan memperbarui status keluhan Given Informasi keluhan masyarakat telah lengkap When Petugas Memproses Keluhan Masyarakat And Petugas Memperbarui status keluhan Then Status keluhan berubah menjadi selesai atau diproses |
Mencakup use case: - Memproses Keluhan Masyarakat - Memperbarui status keluhan |
|
|
Behat in Two Words
Behat mengotomatisasi "acceptance testing" pada Sistem Pengaduan Layanan. Setiap pengujian ditulis menggunakan bahasa sehari-hari dengan sintaks Gherkin. |
Fitur dijelaskan dalam berkas <nama_fitur>.feature
(contoh: pengaduan_warga.feature
). Sebuah fitur berisi kumpulan pengujian yang disebut Scenarios. |
Setiap skenario terdiri dari: |
- Konteks (Given): Kondisi awal atau peran aktor (contoh: WARGA atau Petugas) |
- Aksi (When): Tindakan yang dilakukan (contoh: mengisi formulir atau memproses keluhan) |
- Hasil (Then): Hasil akhir yang diharapkan (contoh: status keluhan berhasil diperbarui) |
Use Examples
Scenario Outline: Memproses keluhan berdasarkan kelengkapan data |
Given Petugas mengecek keluhan dengan kondisi data "<kelengkapan>" |
When Petugas mengambil tindakan "<tindakan>" |
Then Status keluhan diperbarui menjadi "<status_akhir>" |
Examples: |
|kelengkapan | tindakan | status_akhir | |
|Lengkap | Memproses Keluhan | Diproses | |
|Tidak Lengkap|Meminta Detail Informasi|Menunggu Informasi| |
|Selesai|Memperbarui status keluhan|Selesai| |
Web Apps (Mink)
Navigasi (Surf): |
Formulir (Forms): |
Saya berada di "/lapor-keluhan" |
Saya mengisi "Judul Keluhan" dengan "Lampu Jalan Rusak" |
Saya pergi ke "/daftar-keluhan" |
Saya mengunggah berkas "bukti.jpg" ke "Dokumen Pendukung" |
Saya menekan tombol "Kirim Keluhan" |
Saya memilih "Infrastruktur" dari "Kategori Keluhan" |
Saya memilih tautan "Cek Status" |
Saya mengisi "Catatan Petugas" dengan "Meminta Detail Informasi" |
| |
Saya memilih "Diproses" dari "Status Keluhan" |
Pengecekan (Assertions): |
Saya harus melihat "Keluhan berhasil dikirim" |
Saya harus berada di halaman "/daftar-keluhan" |
Field "Status" harus berisi "Diproses" |
Saya harus melihat "Meminta Detail Informasi kepada Masyarakat" |
Saya tidak boleh melihat "Gagal Mengirim" |
Tautan "Unggah Dokumen" harus tersedia |
|