TDD in — Detail Verifikasi Page Digipus Application

putu agastya
Software Project Course Blog - Marjinal
2 min readMay 14, 2020

Melanjutkan pembahasan TDD pada pengembangan aplikasi Digipus yang di mulai oleh samuel pada https://medium.com/software-engineering-project-course-blog-marjinal/tdd-registration-page-digipus-application-9c9335ddeb4a saya akan membahas penerapan tdd pada bagian lain dari aplikasi digipus.

TDD atau test driven development adalah sebuah proses pengembangan aplikasi dimana developer menulis test terlebih dahulu sebelum mengimplementasikan fitur.

TDD cycle memiliki 3 bagian; Red, Green Refactor. Red, adalah ketika test yang sudah kita buat gagal karena belum ada nya implementasi dari fitur. Green, adalah ketika implementasi dari fitur kita berhasil melewati semua test tanpa gagal. Dan terakhir Refactor, adalah proses “pembersihan” kode dimana kita mencoba meminimalisasi duplikasi kode, memperbaiki penamaan class, object dan variable dan lain-lain.

Manfaat dari TDD adalah sebagai developer kita dipaksa memikirkan flow dari fitur kita secara menyeluruh sebelum melakukan implementasi. Hal ini akan membantu kita untuk membuat implementasi yang minimal namun memenuhi requirements dan kode yang dapat di test.

TDD pada development Digipus

Pada sprint 3 saya mengerjakan fitur detail verifikasi. Fitur pada halaman dashboard ini memiliki requirements dimana pada sebuah halaman akan ada 2 table. Table pertama adalah “tabel pending” yang berisi materi yang memiliki status “Diproses” dan table kedua adalah “table riwayat” yang berisi materi-materi yang memiliki status “Ditolak” atau “Diterima”.

Agar materi yang “diproses” dapat ditolak atau diterima, admin harus memencet tombol yang akan mengirimkan form apakah materi ditolak atau diterima. Setelah materi ditolak atau diterima admin, maka materi tersebut akan pindah ke “table pending” ke “tabel riwayat” dengan status yang diterima nya.

Berikut adalah test yang saya buat.

Pertama saya mengecek apakah materi diproses ada pada table pending. Kemudian saya melakukan test menerima materi tersebut dan melihat apakah saya di kembalikan ke halaman dashboard. Dan terakhir saya mengecek apakah materi tersebut berhasil pindah dari table pending ke table riwayat.

--

--