Mulai untuk melakukan testing aplikasi Laravel sejak awal #terjemah

Awalnya aku mikir, ngapain si pake buat testing segala, kan jadi kerja dua kali

Syofyan Zuhad
3 min readNov 22, 2021

Assalamu’alaikum Warahmatullahi Wabarakatuh..

source: google

Testing kembali disorot belakangan ini. Jeffery Way memulai seri baru di teknik penulisan kode yang lebih bersih (clean code). Pada beberapa episode pertama menekankan bagaimana tes harus ada untuk refactor ulang kode Anda dengan percaya diri.

Ini bukanlah konsep yang baru. Michael Feathers mendeklarasikan banyak basis kode tanpa test yang menjadi sebuah ‘warisan’ dalam bukunya Working Effectively with Legacy Code.

Sebagai seseorang yang menghabiskan dua tahun dalam tim programming yang menerapkan TDD secara extrim setiap harinya, melakukan testing tidak hanya memberikan kepercayaan diri di kode yang saya tulis, tapi juga meningkatkan skill pemrogramanku.

Meskipun dengan banyaknya dorongan untuk melakukan testing, masih jarang menemukan aplikasi laravel dengan test. Dari hasil analisis yang saya bagikan di Laravel by the Numbers kurang dari seperempat aplikasi Laravel yang menggunakan test.

Ironinya, saya belum pernah menemukan seorang developer yang tidak ingin menuliskan test.

Jadi kenapa kita tidak melakukan testing untuk aplikasi Laravel?

Selama beberapa bulan terakhir saya telah bertanya kepada developer dan klien mengapa mereka tidak menulis tes untuk aplikasi Laravel mereka yang sudah ada. Jawabannya hampir selalu kembali tentang waktu.

Menulis test memang membutuhkan waktu. Saya tidak akan mengklaim yanng sebaliknya. Untuk membuat test, fixtures, dan mocks membutuhkan waktu. Ini juga merupakan tugas yang membosankan tanpa hasil yang terlihat secara langsung.

Namun, bahkan ketika diberi waktu, kami masih tidak menulis test. Ini sedikit paradoks. Jika kita mengetahui manfaat dari melakukan testing dan memiliki waktu untuk melakukannya, terus kenapa kita tidak menulis test?

Ini membawa saya ke tanggapan umum berikutnya, kita tidak tahu harus mulai dari mana untuk melakukan testing.

Disini akan terbagi menjadi dua bagian. Yang pertama adalah secara harfiah kita tidak tahu tes mana yang harus ditulis terlebih dahulu. Dan yang kedua, lebih ke ketidaktahuan bagaimana cara menulis tes pertama.

Adam Wathan mengungkapkan hal yang menyakitkan ini sebagai motivasinya untuk membuat kursus Test Driven Laravel. Berisi titik kesulitan untuk menulis test untuk aplikasi Laravel yang sudah ada.

Saya lebih fokus untuk menulis mengurangi beban waktu dalam melakukan testing di artikel terpisah. Hari ini, saya ingin fokus untuk mulai melakukan testing di aplikasi Laravel.

Daftar Isi

Karena panduan ini hampir 5.000 kata, saya menambahkan daftar isi untuk navigasi yang lebih mudah, membaca lanjutan, dan referensi.

Perlu diketahui, semua artikel dibawah ini masih dalam proses diterjemahkan ke bahasa indonesia.

  1. How to start testing?
    - How to start testing in Laravel? (publish)
  2. Where to start testing? (publish)
  3. Getting started with testing (proses)
    - Installation (belum di terjemahkan)
    - Running tests (belum di terjemahkan)
    - Testing structure (belum di terjemahkan)
  4. Writing the first test (belum di terjemahkan)
  5. Figuring out what to test (belum di terjemahkan)
  6. Writing the second test (belum di terjemahkan)
    - Testing is about confidence (belum di terjemahkan)
  7. Model factories (belum di terjemahkan)
  8. Making database assertions (belum di terjemahkan)
  9. Varying test data with Faker (belum di terjemahkan)
  10. Writing strong tests (belum di terjemahkan)
  11. Setting authenticated users (belum di terjemahkan)
  12. Additional test cases (belum di terjemahkan)
  13. Sample project on GitHub (belum di terjemahkan)

Pembaruan dari artikel diatas akan menyusul.

Artikel ini adalah terjemah dari sini.

Sekian. Semoga Bermanfaat.

Wassalamu’alaikum Warahmatullahi Wabarakatuh..

--

--