\documentclass[10pt,a4paper]{article} % Packages \usepackage{fancyhdr} % For header and footer \usepackage{multicol} % Allows multicols in tables \usepackage{tabularx} % Intelligent column widths \usepackage{tabulary} % Used in header and footer \usepackage{hhline} % Border under tables \usepackage{graphicx} % For images \usepackage{xcolor} % For hex colours %\usepackage[utf8x]{inputenc} % For unicode character support \usepackage[T1]{fontenc} % Without this we get weird character replacements \usepackage{colortbl} % For coloured tables \usepackage{setspace} % For line height \usepackage{lastpage} % Needed for total page number \usepackage{seqsplit} % Splits long words. %\usepackage{opensans} % Can't make this work so far. Shame. Would be lovely. \usepackage[normalem]{ulem} % For underlining links % Most of the following are not required for the majority % of cheat sheets but are needed for some symbol support. \usepackage{amsmath} % Symbols \usepackage{MnSymbol} % Symbols \usepackage{wasysym} % Symbols %\usepackage[english,german,french,spanish,italian]{babel} % Languages % Document Info \author{felynaaa} \pdfinfo{ /Title (behat-use-case-pengaduan-layanan.pdf) /Creator (Cheatography) /Author (felynaaa) /Subject (Behat Use Case Pengaduan Layanan Cheat Sheet) } % Lengths and widths \addtolength{\textwidth}{6cm} \addtolength{\textheight}{-1cm} \addtolength{\hoffset}{-3cm} \addtolength{\voffset}{-2cm} \setlength{\tabcolsep}{0.2cm} % Space between columns \setlength{\headsep}{-12pt} % Reduce space between header and content \setlength{\headheight}{85pt} % If less, LaTeX automatically increases it \renewcommand{\footrulewidth}{0pt} % Remove footer line \renewcommand{\headrulewidth}{0pt} % Remove header line \renewcommand{\seqinsert}{\ifmmode\allowbreak\else\-\fi} % Hyphens in seqsplit % This two commands together give roughly % the right line height in the tables \renewcommand{\arraystretch}{1.3} \onehalfspacing % Commands \newcommand{\SetRowColor}[1]{\noalign{\gdef\RowColorName{#1}}\rowcolor{\RowColorName}} % Shortcut for row colour \newcommand{\mymulticolumn}[3]{\multicolumn{#1}{>{\columncolor{\RowColorName}}#2}{#3}} % For coloured multi-cols \newcolumntype{x}[1]{>{\raggedright}p{#1}} % New column types for ragged-right paragraph columns \newcommand{\tn}{\tabularnewline} % Required as custom column type in use % Font and Colours \definecolor{HeadBackground}{HTML}{333333} \definecolor{FootBackground}{HTML}{666666} \definecolor{TextColor}{HTML}{333333} \definecolor{DarkBackground}{HTML}{A30D0D} \definecolor{LightBackground}{HTML}{FCF7F7} \renewcommand{\familydefault}{\sfdefault} \color{TextColor} % Header and Footer \pagestyle{fancy} \fancyhead{} % Set header to blank \fancyfoot{} % Set footer to blank \fancyhead[L]{ \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{C} \SetRowColor{DarkBackground} \vspace{-7pt} {\parbox{\dimexpr\textwidth-2\fboxsep\relax}{\noindent \hspace*{-6pt}\includegraphics[width=5.8cm]{/web/www.cheatography.com/public/images/cheatography_logo.pdf}} } \end{tabulary} \columnbreak \begin{tabulary}{11cm}{L} \vspace{-2pt}\large{\bf{\textcolor{DarkBackground}{\textrm{Behat Use Case Pengaduan Layanan Cheat Sheet}}}} \\ \normalsize{by \textcolor{DarkBackground}{felynaaa} via \textcolor{DarkBackground}{\uline{cheatography.com/219024/cs/48464/}}} \end{tabulary} \end{multicols}} \fancyfoot[L]{ \footnotesize \noindent \begin{multicols}{3} \begin{tabulary}{5.8cm}{LL} \SetRowColor{FootBackground} \mymulticolumn{2}{p{5.377cm}}{\bf\textcolor{white}{Cheatographer}} \\ \vspace{-2pt}felynaaa \\ \uline{cheatography.com/felynaaa} \\ \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Cheat Sheet}} \\ \vspace{-2pt}Not Yet Published.\\ Updated 24th September, 2026.\\ Page {\thepage} of \pageref{LastPage}. \end{tabulary} \vfill \columnbreak \begin{tabulary}{5.8cm}{L} \SetRowColor{FootBackground} \mymulticolumn{1}{p{5.377cm}}{\bf\textcolor{white}{Sponsor}} \\ \SetRowColor{white} \vspace{-5pt} %\includegraphics[width=48px,height=48px]{dave.jpeg} Measure your website readability!\\ www.readability-score.com \end{tabulary} \end{multicols}} \begin{document} \raggedright \raggedcolumns % Set font size to small. Switch to any value % from this page to resize cheat sheet text: % www.emerson.emory.edu/services/latex/latex_169.html \footnotesize % Small font. \begin{multicols*}{2} \begin{tabularx}{8.4cm}{x{3.84 cm} x{4.16 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Command Line (Behat)}} \tn % Row 0 \SetRowColor{LightBackground} -{}-init & Membuat direktori features \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} -{}-config=behat.yml & Menggunakan file konfigurasi \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} -{}-format=html -out=report.html & Membuat laporan format HTML \tn % Row Count 6 (+ 2) % Row 3 \SetRowColor{white} -{}-expand & Menampilkan detail pengujian \tn % Row Count 8 (+ 2) % Row 4 \SetRowColor{LightBackground} -{}-tags='@warga' & Menjalankan tes pada tag tertentu \tn % Row Count 10 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Feature \& Scenario}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Feature: Pengaduan Layanan} \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{In order to menyampaikan pengaduan} \tn % Row Count 2 (+ 1) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{As a WARGA} \tn % Row Count 3 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{I want to mengirimkan keluhan} \tn % Row Count 4 (+ 1) % Row 4 \SetRowColor{LightBackground} 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 \tn % Row Count 21 (+ 17) % Row 5 \SetRowColor{white} 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 \tn % Row Count 31 (+ 10) \end{tabularx} \par\addvspace{1.3em} \vfill \columnbreak \begin{tabularx}{8.4cm}{x{4 cm} x{4 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Feature \& Scenario (cont)}} \tn % Row 6 \SetRowColor{LightBackground} 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 \tn % Row Count 15 (+ 15) % Row 7 \SetRowColor{white} 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 \tn % Row Count 26 (+ 11) % Row 8 \SetRowColor{LightBackground} 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 \tn % Row Count 39 (+ 13) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{8.4cm}}{\bf\textcolor{white}{Behat in Two Words}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{Behat mengotomatisasi "acceptance testing" pada Sistem Pengaduan Layanan. Setiap pengujian ditulis menggunakan bahasa sehari-hari dengan sintaks {\bf{Gherkin}}.} \tn % Row Count 4 (+ 4) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{Fitur dijelaskan dalam berkas `\textless{}nama\_fitur\textgreater{}.feature` (contoh: \seqsplit{`pengaduan\_warga.feature`).} Sebuah fitur berisi kumpulan pengujian yang disebut {\bf{Scenarios}}.} \tn % Row Count 8 (+ 4) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{Setiap skenario terdiri dari:} \tn % Row Count 9 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{- {\bf{Konteks}} (Given): Kondisi awal atau peran aktor (contoh: WARGA atau Petugas)} \tn % Row Count 11 (+ 2) % Row 4 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{- {\bf{Aksi}} (When): Tindakan yang dilakukan (contoh: mengisi formulir atau memproses keluhan)} \tn % Row Count 13 (+ 2) % Row 5 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{- {\bf{Hasil}} (Then): Hasil akhir yang diharapkan (contoh: status keluhan berhasil diperbarui)} \tn % Row Count 15 (+ 2) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{X} \SetRowColor{DarkBackground} \mymulticolumn{1}{x{8.4cm}}{\bf\textcolor{white}{Use Examples}} \tn % Row 0 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{Scenario Outline: Memproses keluhan berdasarkan kelengkapan data} \tn % Row Count 2 (+ 2) % Row 1 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{Given Petugas mengecek keluhan dengan kondisi data "\textless{}kelengkapan\textgreater{}"} \tn % Row Count 4 (+ 2) % Row 2 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{When Petugas mengambil tindakan "\textless{}tindakan\textgreater{}"} \tn % Row Count 5 (+ 1) % Row 3 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{Then Status keluhan diperbarui menjadi "\textless{}status\_akhir\textgreater{}"} \tn % Row Count 7 (+ 2) % Row 4 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{Examples:} \tn % Row Count 8 (+ 1) % Row 5 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{|kelengkapan | tindakan | status\_akhir |} \tn % Row Count 10 (+ 2) % Row 6 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{|Lengkap | Memproses Keluhan | Diproses |} \tn % Row Count 12 (+ 2) % Row 7 \SetRowColor{white} \mymulticolumn{1}{x{8.4cm}}{|Tidak Lengkap|Meminta Detail Informasi|Menunggu Informasi|} \tn % Row Count 14 (+ 2) % Row 8 \SetRowColor{LightBackground} \mymulticolumn{1}{x{8.4cm}}{|Selesai|Memperbarui status keluhan|Selesai|} \tn % Row Count 15 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}-} \end{tabularx} \par\addvspace{1.3em} \begin{tabularx}{8.4cm}{x{3.76 cm} x{4.24 cm} } \SetRowColor{DarkBackground} \mymulticolumn{2}{x{8.4cm}}{\bf\textcolor{white}{Web Apps (Mink)}} \tn % Row 0 \SetRowColor{LightBackground} Navigasi (Surf): & Formulir (Forms): \tn % Row Count 1 (+ 1) % Row 1 \SetRowColor{white} Saya berada di "/lapor-keluhan" & Saya mengisi "Judul Keluhan" dengan "Lampu Jalan Rusak" \tn % Row Count 4 (+ 3) % Row 2 \SetRowColor{LightBackground} Saya pergi ke "/daftar-keluhan" & Saya mengunggah berkas "bukti.jpg" ke "Dokumen Pendukung" \tn % Row Count 7 (+ 3) % Row 3 \SetRowColor{white} Saya menekan tombol "Kirim Keluhan" & Saya memilih "Infrastruktur" dari "Kategori Keluhan" \tn % Row Count 10 (+ 3) % Row 4 \SetRowColor{LightBackground} Saya memilih tautan "Cek Status" & Saya mengisi "Catatan Petugas" dengan "Meminta Detail Informasi" \tn % Row Count 14 (+ 4) % Row 5 \SetRowColor{white} & Saya memilih "Diproses" dari "Status Keluhan" \tn % Row Count 17 (+ 3) % Row 6 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Pengecekan (Assertions):} \tn % Row Count 18 (+ 1) % Row 7 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{Saya harus melihat "Keluhan berhasil dikirim"} \tn % Row Count 19 (+ 1) % Row 8 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Saya harus berada di halaman "/daftar-keluhan"} \tn % Row Count 20 (+ 1) % Row 9 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{Field "Status" harus berisi "Diproses"} \tn % Row Count 21 (+ 1) % Row 10 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Saya harus melihat "Meminta Detail Informasi kepada Masyarakat"} \tn % Row Count 23 (+ 2) % Row 11 \SetRowColor{white} \mymulticolumn{2}{x{8.4cm}}{Saya tidak boleh melihat "Gagal Mengirim"} \tn % Row Count 24 (+ 1) % Row 12 \SetRowColor{LightBackground} \mymulticolumn{2}{x{8.4cm}}{Tautan "Unggah Dokumen" harus tersedia} \tn % Row Count 25 (+ 1) \hhline{>{\arrayrulecolor{DarkBackground}}--} \end{tabularx} \par\addvspace{1.3em} % That's all folks \end{multicols*} \end{document}