AI Merevolusi Pengujian Perangkat Lunak:Dari Otomatisasi Cepat hingga Wawasan Strategis
Dengan penguji augmentasi AI yang agen, saya melihat para penguji mulai naik ke rantai nilai:Saya melihat mereka menghabiskan lebih banyak waktu untuk memikirkan apa yang harus diuji dan alasannya, dibandingkan hanya bagaimana caranya. Saya melihat mereka lebih memikirkan sistem, pengguna, dan risiko, daripada menghabiskan waktu untuk mengotomatisasi pemeriksaan berulang.
Singkatnya, dengan AI agen, upayanya beralih dari bagaimana menuju apa dan mengapa—pemikiran yang bernilai lebih tinggi berhasil. Jika dipetakan ke dalam model sederhana, perubahan tersebut terlihat seperti ini:
Di bawah ini adalah beberapa pengamatan saya mengenai “apa” dan “mengapa” terbesar yang saya lihat dalam perubahan ini—dan mengapa saya merasa terdorong dan benar-benar optimis mengenai hal tersebut.
AI mengurangi biaya otomatisasi dalam pengujian
Kini semakin mudah untuk mengotomatiskan bagian mekanis pengujian—baik itu mengotomatisasi pemeriksaan berulang secara manual, menghasilkan data pengujian, atau menemukan pola dalam hasil pengujian. Dan itulah aspek yang paling saya sukai tentang AI dalam pengujian. Bukan karena mesin otomatisasi menjadi lebih murah, namun karena sesuatu yang lebih penting terjadi:penguji akhirnya mempunyai waktu dan ruang untuk berpikir.
Mereka dapat melangkah mundur, melihat keseluruhan sistem, dan menggunakan energi kognitif mereka pada hal yang benar-benar penting:menemukan masalah perangkat lunak yang penting.
Otomasi yang skalabel mengungkapkan nilai pengujian terampil
AI tidak hanya mengurangi biaya pembuatan otomatisasi. Hal ini memperlihatkan nilai sebenarnya dari pengujian manusia secara profesional:pengujian yang secara konsisten menemukan masalah-masalah langka, tersembunyi, dan tidak kentara yang penting. Dan ketika AI mengotomatiskan lebih banyak pekerjaan yang berulang dan membosankan, para penguji beralih dari "Bagaimana kita mengotomatiskannya?" hingga "Risiko apa yang paling penting bagi pemangku kepentingan mana?".
Hambatannya bukanlah otomatisasi, melainkan pemikiran
Dan pergeseran ini—realokasi perhatian ini—adalah hal yang sehat, karena hambatan yang ada bukanlah otomatisasi, pikir mereka. Yang membatasi seberapa cepat kami dapat mengirimkan perangkat lunak berkualitas tinggi secara konsisten adalah waktu yang dibutuhkan untuk eksplorasi, eksperimen, dan investigasi mendalam. Hal itulah yang memunculkan risiko-risiko yang penting.
Tim jarang gagal karena mereka tidak dapat menulis otomatisasi yang cukup. Mereka gagal karena mereka tidak (atau tidak bisa) segera mengajukan pertanyaan yang tepat.
-
Apakah kita memahami sistemnya?
-
Apakah kita memahami penggunanya?
-
Apakah kita memahami risiko mana yang paling penting bagi pemangku kepentingan mana?
Jika kita tidak menanyakan pertanyaan-pertanyaan tersebut, otomatisasi sebesar apa pun tidak akan menyelamatkan kita.
Pengujian adalah investigasi, bukan jalur produksi
Pengujian bukanlah proses pabrik. Ini adalah penyelidikan terhadap kualitas, risiko, dan informasi yang belum kami miliki. Tantangan dalam pengujian adalah membingkai risiko, merancang eksperimen, mempertanyakan asumsi, dan menceritakan kisah bermanfaat tentang kualitas perangkat lunak yang kami uji.
Dan kami melakukan semua itu dengan satu tujuan:untuk memungkinkan orang lain (seperti pengembang dan manajer) membuat keputusan yang lebih tepat dan lebih cepat (baik itu memperbaiki sesuatu atau mengirimkannya). Itulah inti dari pengujian. AI mendukungnya, namun tidak menggantikannya.
AI adalah penguat, bukan pengganti
Inilah sebabnya saya melihat AI sebagai penguat kemampuan, bukan pengganti penguji perangkat lunak. Ini dapat menyarankan pengujian yang relevan, menyusun otomatisasi, menghasilkan data, dan meringkas log. AI menghasilkan artefak dan wawasan yang berguna, tetapi manusia menghasilkan penilaian.
AI meningkatkan batas atas apa yang dapat dilakukan penguji; hal ini tidak menghilangkan kebutuhan akan pemahaman manusia. Sekali lagi, AI adalah penguat segalanya; itu meningkatkan kecerdikan...tetapi juga risiko. Ketika AI menjadi lebih otonom, aktivitas menjadi lebih mudah disalahartikan sebagai wawasan. Jika kita ingin memanfaatkan teknologi ini secara maksimal, kita juga perlu memahami kondisi-kondisi yang dapat menyesatkan kita. Bukan untuk berhati-hati, namun untuk membantu kami mengarahkan AI ke arah yang benar.
Ketika kuantitas menyamar sebagai keyakinan
Salah satu cara pertama AI menyesatkan kita adalah dengan menciptakan ilusi cakupan tes. Ketika ide tes menjadi mudah untuk dihasilkan, Anda tergoda untuk menyamakan volume tes dengan kualitas tes. Namun para profesional tahu bahwa segudang pemeriksaan yang dilakukan oleh AI masih bisa mengabaikan risiko sebenarnya:jumlah cakupan bisa terlihat mengesankan, dasbor bisa menyala hijau, namun pertanyaan-pertanyaan penting mungkin masih belum terjawab.
Tentu saja, kita dapat menerapkan AI dalam konteks kita. Namun sebagian besar pengetahuan kita bersifat implisit—pengetahuan yang ada di kepala manusia, bukan dalam dokumen. AI tidak bisa mengaksesnya secara ajaib. Jadi, jangan biarkan AI mendikte pengujian Anda. Perlakukan setiap ide pengujian yang dihasilkan AI sebagai dorongan untuk bertanya:"Apa yang terlewatkan? Apa asumsinya? Apa yang tidak diketahui?". Bimbingan, bukan ketaatan, adalah tugas penguji.
Otomasi yang lebih cepat masih bisa menjadi otomatisasi yang salah
Otomatisasi yang terukur mendorong otomatisasi segala sesuatu, termasuk hal-hal yang tidak penting. Penguji profesional mengetahui hal ini dengan baik. Seperti yang dikatakan Dorothy Graham:"Jika Anda mengotomatiskan kekacauan, yang Anda dapatkan hanyalah kekacauan yang lebih cepat." Penguji profesional tidak membuat pemeriksaan otomatis untuk kepentingan mereka sendiri. Mereka tidak mengukur nilai berdasarkan volume. Mereka tahu bahwa serangkaian kecil pemeriksaan yang mengungkap risiko jauh lebih berharga daripada serangkaian besar pemeriksaan otomatis yang hanya memberi tahu Anda sedikit atau tidak sama sekali tentang risiko sebenarnya. Mereka bertanya:"Informasi apa yang diberikan cek ini kepada kita?" atau "Apakah hal ini memberi tahu kita sesuatu yang berarti tentang risiko?". Mereka berfokus pada mengotomatisasi hal-hal yang penting, bukan hanya hal-hal yang mudah.
Risiko tersembunyi:AI dapat menghilangkan keterampilan penguji perangkat lunak
Jebakan halus lainnya adalah pengikisan keterampilan secara diam-diam. Penguji profesional memahami bahwa AI dapat menghilangkan keterampilan mereka jika mereka berhenti berlatih bagian yang sulit. Mereka tahu bahwa jika mereka kebanyakan mendorong AI untuk melontarkan ide-ide pengujian, mereka mungkin tidak membangun kekuatan untuk memodelkan sistem yang asing, mengenali ambiguitas dan bias dalam persyaratan, atau merancang eksperimen dalam ketidakpastian.
Dan ketika otot-otot itu melemah, kemampuan menilai saran AI juga ikut melemah. Hal yang menarik adalah AI membebaskan penguji profesional untuk melakukan pekerjaan yang bernilai lebih tinggi, sementara AI juga dapat menyesatkan penguji amatir—penguji yang kurang berpengalaman atau mereka yang melakukan pengujian dari peran lain (termasuk saya sendiri)—untuk terlalu mempercayai keluaran AI. Tanpa keterampilan pengujian yang kuat, mudah untuk salah mengira saran yang fasih dengan saran yang masuk akal.
Secara keseluruhan, AI memperkuat apa yang dihasilkan oleh penguji. Ini melipatgandakan kekuatan dan kesenjangan. Tim campuran penguji profesional dan amatir yang mengakui asimetri ini akan berkembang.
Pilihannya:pemikiran yang lebih baik atau ritual kosong?
Hal ini membawa kita pada keputusan yang harus diambil oleh tim penguji. AI menciptakan titik pilihan baru:apakah kita menggunakan waktu luangnya untuk berinvestasi dalam pemikiran yang lebih baik (pemodelan yang lebih kuat, pertanyaan yang lebih tajam, analisis risiko yang lebih baik) atau apakah kita menghabiskannya untuk lebih banyak ritual?
Yang saya maksud dengan ritual adalah kesibukan yang disamarkan sebagai pengujian:membuat tumpukan pemeriksaan otomatis karena mudah, mengikuti rencana pengujian yang dibuat oleh AI dengan ketat bahkan ketika risiko baru muncul, atau mengisi dasbor dengan metrik yang tidak mencerminkan kualitas sebenarnya. Masa depan pengujian bergantung pada pilihan ini.
Menutup loop:apa yang membuat saya optimis
Jadi izinkan saya kembali ke awal:AI mengubah pengujian, bukan dengan mengganti penguji tetapi dengan mengungkapkan apa yang mereka lakukan. Dan ketika saya melihat tim tempat saya bekerja, saya melihat sesuatu yang menggembirakan:beberapa tahun yang lalu, dalam pertemuan penyempurnaan simpanan kami, saya melihat pertanyaan pertama para penguji adalah "Bagaimana kami mengotomatiskannya?" alih-alih "Apa yang harus kita uji dan mengapa?".
Tapi sekarang, aku memperhatikan sesuatu yang berbeda. Karena otomatisasi menjadi lebih mudah, percakapan telah bergeser. Semakin banyak penguji yang menanyakan pertanyaan apa dan mengapa karena mereka memiliki ruang untuk melakukannya.
Lebih banyak pembicaraan mengenai risiko daripada skrip. Lebih banyak energi yang digunakan untuk memahami pekerjaan daripada melakukan pemeriksaan. Semakin banyak penguji yang memilih pemikiran yang lebih mendalam daripada ritual kosong.
Ya, AI memiliki risikonya sendiri (ilusi cakupan, otomatisasi yang salah, deskilling). Namun saya melihat penguji perangkat lunak merespons dengan serius. Mereka menggunakan AI untuk memperdalam penilaian mereka, bukan untuk menghindarinya.
Efek bersihnya? Pengujian menjadi lebih baik, bukan karena AI itu ajaib, namun karena AI membebaskan penguji untuk melakukan lebih banyak pekerjaan yang penting:pekerjaan yang tidak hanya menghasilkan lebih banyak otomatisasi namun juga memunculkan lebih banyak kebenaran tentang kualitas perangkat lunak kami; pekerjaan yang tidak hanya berjalan lebih cepat tetapi juga lebih dalam.
Dan hal itu membuat saya optimis terhadap masa depan kerajinan kami.