Pertanyaan yang Sulit Dijawab Pukul Sebelas Malam
Pertanyaan yang sulit dijawab pukul sebelas malam
Pukul sebelas malam, sebuah pesan masuk ke grup kerja: "Perbaikannya sudah dites belum? Kalau aman, kita rilis malam ini juga."
Kamu memang sudah mengujinya. Sore tadi kamu membuka aplikasi, mencoba alur pembayaran berulang kali, mengganti-ganti nominal, mencoba dari dua ponsel yang ada di mejamu, dan tidak menemukan masalah. Maka kamu mengetik jawaban yang paling jujur menurutmu saat itu: "Sudah, aman."
Rilis berjalan. Enam jam kemudian layanan pelanggan mulai menerima keluhan, dan pertanyaan berikutnya datang bertubi-tubi: bagian mana saja yang tadi kamu coba? Pakai data apa? Versi yang mana? Apakah kasus yang sekarang bermasalah termasuk yang kamu uji, atau memang tidak sempat tersentuh?
Di titik itu kamu sadar: kamu tidak sedang kekurangan pengujian. Kamu kekurangan jejak.
Masalahnya bukan kamu tidak menguji
Ini yang membuat situasinya terasa tidak adil. Kamu bekerja. Kamu teliti. Kamu bahkan menemukan dua hal aneh dan sempat mengeceknya lagi sampai yakin bukan masalah. Tetapi seluruh hasil kerja itu berhenti di satu tempat: kepalamu.
Selama semuanya berjalan lancar, tidak ada yang menuntut lebih. Begitu ada yang meledak, semua orang tiba-tiba membutuhkan sesuatu yang tidak pernah kamu tulis. Dan ingatan, sebaik apa pun, punya sifat yang buruk sebagai alat bukti: ia menyusut, ia berubah, dan ia tidak bisa dibaca orang lain.
Tiga hal yang hilang ketika pengujian tidak meninggalkan jejak
Pertama, keputusan jadi macet. Setelah insiden, tim harus memutuskan: tarik rilis atau perbaiki maju? Perbaikan ini perlu diuji ulang seluruhnya atau sebagiannya saja? Keputusan semacam itu butuh bahan. Kalau bahannya tidak ada, yang tersisa hanyalah dugaan yang diucapkan dengan nada percaya diri.
Kedua, pekerjaan diulang dari nol. Minggu depan ada perbaikan lanjutan. Karena tidak ada catatan tentang apa yang sudah dicoba dan bagaimana caranya, orang berikutnya — bisa jadi kamu sendiri — mulai lagi dari halaman kosong. Waktu yang seharusnya dipakai menguji hal baru habis untuk menyusun ulang hal lama.
Ketiga, beban pembuktian jatuh ke satu orang. Ketika mitra atau pemeriksa dari luar tim meminta bukti bahwa fitur ini pernah diuji, satu-satunya sumber adalah orang yang mengerjakannya. Kalau ia sedang cuti, pindah kerja, atau sekadar lupa, tim kehilangan kemampuan menjawab. Ini bukan soal ketidakpercayaan pada individu; ini soal organisasi yang menaruh seluruh memorinya di satu kepala.
"Aman" adalah kesimpulan, bukan bukti
Kalimat "sudah dites, aman" sebenarnya melompati banyak hal. Ia menyampaikan kesimpulan tanpa menyertakan dasar kesimpulan itu. Orang yang menerimanya tidak bisa menilai apakah kesimpulan itu kuat atau rapuh, karena ia tidak tahu seberapa luas pengujiannya, di lingkungan apa, dengan data seperti apa, dan bagian mana yang sengaja atau terpaksa dilewati.
Dokumentasi pengujian, pada intinya, adalah usaha menyertakan dasar itu — secukupnya, dalam bentuk yang bisa dibaca orang lain, agar keputusan berikutnya bisa diambil dengan mata terbuka.
Dokumentasi bukan pekerjaan tambahan setelah pengujian
Banyak orang membayangkan urutannya begini: uji dulu sampai selesai, lalu kalau sempat, tulis laporannya. Dengan urutan itu, dokumentasi selalu menjadi korban pertama saat waktu menipis — dan waktu selalu menipis.
Modul ini berangkat dari cara pandang yang berbeda. Menentukan apa yang akan diuji, mencatat apa yang benar-benar dijalankan, dan menandai apa yang tidak sempat disentuh adalah bagian dari pengujian itu sendiri. Tanpa itu, yang kamu lakukan lebih dekat ke mencoba-coba daripada menguji: aktivitasnya mirip, tetapi hasilnya tidak bisa dipertanggungjawabkan, tidak bisa diulang, dan tidak bisa dipakai siapa pun kecuali dirimu, itu pun hanya untuk beberapa hari ke depan.
Yang akan kamu kerjakan di modul ini
Modul pembuka ini punya tiga sasaran yang saling menyambung:
- Membedah satu kasus kegagalan rilis dan menunjukkan, satu per satu, keputusan mana yang tidak bisa diambil karena buktinya tidak pernah ditulis.
- Memisahkan kebutuhan empat pembaca dokumentasi pengujian — penguji lain, pengembang, pemilik produk, dan pemeriksa dari luar tim — karena keempatnya mencari hal yang berbeda dari dokumen yang sama.
- Menutup dengan latihan menulis satu paragraf: untuk apa dokumentasi pengujian ada di tempat kerjamu sendiri, bukan di tempat kerja ideal yang tidak pernah kamu temui.
Cara membaca modul ini
Siapkan satu rilis nyata dari pekerjaanmu — boleh yang lancar, boleh yang berantakan — dan pakai itu sebagai bahan bandingan di setiap unit. Modul ini tidak akan memberimu templat untuk diisi. Templat mudah didapat di mana saja, dan templat yang diisi tanpa paham tujuannya justru menghasilkan dokumen tebal yang tidak menolong siapa-siapa.