Menembus Batas Pengujian Aplikasi dengan “Bisikan Batin”

Irwan Syarifudin
9 min readFeb 11, 2024

--

Citcat

https://static.promediateknologi.id/crop/0x0:0x0/750x500/webp/photo/2022/12/14/991442753.jpg

Halo testing titan👋. Kali ini saya ingin berbagi sedikit pengalaman sekaligus pengetahuan mengenai suatu hal yang paling sering kita alamin sebagai QA selama melakukan pengujian aplikasi. Selain pakai tools, metodologi testing, perencanaan strategi testing, hingga testcase creation ternyata ada hal yang dapat membantu keseharian kita dalam mencegah adanya bugs atau masalah lain yang akan muncul sebelum rilis. Sesuatu ini engga terlalu teknis, tapi lumayan kece dan kepake, yaitu “bisikan batin”. Bukan sulap, bukan sihir, bukan juga ilmu gaib ya, tapi ini bisa jadi trik jitu kita untuk catching sebuah isu yang akan terjadi dalam aplikasi lebih cepat. Terdengar sangat basic, tapi sering kali masuk ke fundamental sehari-hari kita dalam melakukan uji aplikasi. Cuma, kalo ngelolanya ga tepat bisa juga jadi bomerang buat kita as a QA. Apalagi buat kita yang sering negative thinking sama developer *ups.

Kalau di dalam teori psikologi itu sendiri, istilah “bisikan batin” atau “intuisi” itu mengacu pada pemahaman atau penilaian yang muncul secara spontan, tanpa proses berpikir yang jelas atau penalaran yang eksplisit. Ini adalah jenis pengetahuan yang sering kali sulit dijelaskan atau dipahami secara rasional, tetapi memiliki dampak yang signifikan dalam pengambilan keputusan dan persepsi situasi.

Selain itu, merujuk dari salah satu teori psikologi lain yakni Psikoanalisis bilang “bisikan batin” sering kali muncul dari lapisan bawah sadar pikiran. Teori tersebut percaya bahwa pikiran-pikiran yang tidak terpikirkan secara sadar atau konflik emosional yang terpendam dapat muncul dalam bentuk intuisi atau naluri. Betul apa betul? ini pasti sering terjadi dalam day-to-day kita sebagai QA.

Kalo ditarik garis besar “bisikan batin” sering kali dianggap sebagai resource yang berharga temen-temen, terutama dalam pengambilan keputusan yang kompleks atau situasi di mana informasi terbatas.

apalagi saat baru join di suatu tim dengan minimnya dokumentasi teknikal, dokumentasi API, sampe requirements app yang masih ngambang dari tim product :(.

Dalam dunia per-testingan efek samping intuisi ini juga akan sangat membantu kita sebagai navigator dalam mengambil keputusan yang lebih baik dan efektif, meskipun kadang-kadang sulit juga sih dijelaskan secara logis.

Kenapa Intuisi itu penting

https://asset-a.grid.id/crop/0x0:0x0/945x630/photo/grid/original/115646_ilustrasi-doubtful-news.jpg

Kerap kali sebagai QA, kita memainkan peran sampingan sebagai cenayang yang bisa “meramal” masa depan, karena dituntut memiliki intuisi dan firasat yang tajam juga nih buat ngecekin seluk-beluk aplikasi. Hal ini jadi mendorong kita supaya bisa “mencium” adanya potensi masalah meski belum terlihat jelas. So, does anyone feel it? 😀. Jujur secara pribadi, selama mengemban pekerjaan sebagai QA sering banget mengalami “bisikan batin” yang kerap kali dialami juga oleh seorang cenayang. Dan ternyata hal tersebut bisa menjadi penting. Berikut saya coba jelaskan melalui beberapa poin:

1. Pemahaman Penggunaan Aplikasi

As a QA, penting untuk memahami bagaimana end-user sebenarnya akan berinteraksi dengan aplikasi kita. Teori psikologi “bisikan batin” sejatinya bisa ngebantu QA untuk mengembangkan intuisi tentang gimana sih pengguna akan bereaksi terhadap berbagai fitur, flow aplikasi, hingga printilan UI.

2. Deteksi Masalah secara Subjektif

Intuisi ini memungkinkan QA untuk menangkap masalah-masalah yang mungkin tidak tercakup dalam positive scenario. Seperti performance, experience pengguna atau aspek subjektif lainnya yang bisa berpengaruh langsung terhadap pengalaman pengguna.

Contoh:

  • multitab - Kalo user lagi bikin transaksi di tab sebelah, di tab sebelahnya lagi data product harusnya ga bisa diapus nih. Kayanya, mesti dijagain juga ni di level FE.
  • Gimana rasanya kalo harga produk berubah pas mau bayar? — hem maknyus. Ini nih wajib lakuin, ketika harga produk berubah tiba-tiba pas lagi checkout. So, what the user should feel?
  • jangan-jangan..kalo user kosongin field ini, bisa error 500
  • Mencoba nyari produk atau bikin inputan transaksi dengan yang aneh-aneh. Bisikan batin bisa bawa kita ke skenario unik. Mungkin ada yang bakal pake emoji atau karakter. Why not?
  • Gimana kalo ngerasa susah banget sih liat data transaksi di report yang baru ke-create?. Percayalah teman-teman, sesungguhnya ini salah satu bisikan yang bisa ningkatin kemampuan per-UX an kita. Bisa jadi, ada flow, query atau application code yang mesti di improve sama developer.

3. Pengambilan Keputusan yang Cepat

Dalam situasi di mana waktu dan sumber daya testing terbatas, intuisi cukup memungkinkan untuk membuat kita ngambil keputusan dengan cepat dan efisien. Contohnya, membantu dalam menentukan prioritas pengujian, memilih skenario pengujian yang paling relevan, dan merespons secepat mungkin.

4. Analisis Situasi yang Kompleks

Pada poin ini sangat membantu untuk memungkinkan kita buat mengeksplorasi kemungkinan skenario pengujian yang belum dipikirkan sebelumnya dan mengidentifikasi masalah yang akan muncul.

Contohnya gini, kalo diaplikasi booking tiket online kita harus mikirin apa aja skenario aneh yang bisa terjadi, kayak tiket yang kehabisan, atau sistem pembayaran yang error. Kemudian tes login dengan koneksi internet lemah, tes loading gambar hotel, destinasi wisata ataupun dengan berbagai kondisi internet, dan tes checkout tiket dengan berbagai simulasi error.

Kalo diaplikasi akuntansi misal, gimana ya kira-kira response dari suatu aplikasi saat ada user bikin 1 invoice doang, tapi produk line yang di select sampe 2000-an dan nama produk nya panjang banget (100 karakter). Bisa juga, analisis case saat transaksi dengan variasi pajak + mata uang asing + + dengan periode akuntansi yang panjang + backdate. Dari situ, kita bisa ngejar masalah sebelum dia jadi beneran masalah.

5. Strategi Pengujian

Yang terakhir, intuisi punya peran penting dalam penyusunan strategi pengujian yang efektif. Hal Ini berkaitan dengan poin-poin yang sudah dijelaskan diatas. Ketika semua sudah dilakukan, tinggal menentukan pendekatan pengujian yang paling cucok, memprioritaskan fitur-fitur yang paling penting, dan mengidentifikasi area-area yang membutuhkan perhatian khusus — emang doi doang yang butuh diperhatiin.

Tantangan saat berintuisi

Meskipun intuisi adalah alat yang berharga dalam pengujian aplikasi, ada beberapa tantangan yang dapat muncul saat berbagi temuan atau pendapat berdasarkan intuisi dengan tim seperti programmer dan product owner/manager. Berikut adalah beberapa tantangan yang mungkin kita hadapi:

1. Kesulitan dalam Mengartikulasikan Intuisi

Intuisi seringkali sulit dijelaskan atau diuraikan secara logis. Ini bisa menjadi tantangan tersendiri ketika kita mencoba menjelaskan temuan baru atau pendapat berdasarkan intuisi kepada tim, terutama jika mereka lebih memilih bukti konkret atau data yang terukur.

2. Kurangnya Penerimaan dari Anggota Tim

Beberapa anggota tim mungkin meragukan atau kurang memahami situasi dalam pengujian aplikasi. Ini bisa mengakibatkan kurangnya penerimaan terhadap temuan atau rekomendasi berdasarkan intuisi dari QA, yang ujung-ujungnya jadi efek buruk buat QA. Solusinya apa kira-kira? bisa bangun komunikasi yang lebih terbuka, kasih edukasi tentang peran QA itu sendiri ke tim, sampe kalo perlu kasih simulasi pengujian yang mau di lakuin. Nah kalo masih stuck, ajak pemangku kepenting buat solve masalah ini 😂.

3. Tersinggung alias Baper

Intuisi dapat dipandang sebagai subjektif atau tidak terbukti, terutama oleh orang-orang yang lebih cenderung mempercayai data atau bukti konkret. Ini bisa menyebabkan reaksi negatif nih atau ketidakpercayaan dari tim terhadap kita sebagai seorang QA. Terutama jika intuisi kita tidak sejalan dengan persepsi atau pengalaman mereka. Solusinya? duduk bareng dulu, kompromi pelan-pelan, dan yang penting jangan ngotot guys.

4. Salah s̶e̶b̶l̶a̶k̶ nebak

Intuisi rentan terhadap kesalahan interpretasi yang salah juga. Ini bisa menjadi tantangan tersendiri kalo kita membuat keputusan atau memberikan rekomendasi berdasarkan intuisi yang ternyata tidak akurat atau relevan. Jadi, sering-sering baca dokumentasi, PRD, sama diskusi bareng tim.

Untuk mengatasi tantangan ini, penting untuk terbuka terhadap pandangan dan perspektif anggota tim lain, serta membangun kasus yang kuat untuk temuan atau rekomendasi berdasarkan intuisi dengan menyertakan contoh konkret atau bukti yang relevan jika memungkinkan. Komunikasi terbuka dan kolaboratif juga kunci dalam memastikan bahwa intuisi kita dihargai dan dipertimbangkan sama tim.

Asah Intuisi semaksimal mungkin

Ada sedikit tips untuk eksplorasi dan mengasah intuisi kita sebagai seorang QA:

1. Pahami Aplikasi Sepenuhnya

Ini wajib, fardhu. Se-afal-afalnya kita tentang teori testing, function/non-functional, automation, performance sampe security testing, kita mesti paham setiap sudut aplikasi yang akan kita uji. Pelajari setiap fitur, memahami interaksi antara komponen, dan kalo perlu tinjau kode dev secara menyeluruh(bisa kepoin PR nya dev di repo aplikasi tim). Karena semakin dalam pemahaman kita terhadap aplikasi, semakin baik juga dapat mengidentifikasi potensi masalah.

2. Fokus pada Pengalaman Pengguna

Pertimbangkan perspektif end-user dalam setiap scenario uji yang kita lakuin. Kita coba pikirinin kayak pengguna biasa pas kita lagi uji aplikasi ini. Nanya ke diri sendiri, “Gimana sih cara pengguna bisa interaksi sama aplikasi ini?” Gitu kan bikin kita lebih peka kalo ada masalah atau hal yang bikin pengguna jadi kurang nyaman.

Misalnya kita lagi uji aplikasi e-commerce, sebagai QA kita mesti punya bayangan gimana cara pengguna nyari barang di aplikasi itu. Bayangkan pengguna lagi buru-buru, pengen nemuin barang cepet, tapi tiba-tiba tombol pencariannya lambat atau gak responsif. Itu kan bisa bikin pengguna kesel dan akhirnya mungkin aja mereka tinggalin aplikasi itu dan cari yang lain. Nah, dari situ kita bisa ngerasa kalo kotak pencarian(search box) ini butuh improvement.

3. Mulai Buat Skenario Pengujian dari yang paling Realistis

Skenario pengujian yang mencerminkan real usage membantu memperkuat intuisi kita, untuk itu mulai bikin skenario pengujian yang se-real mungkin. Kita mau uji kayak pengguna asli, kan? Jadi, kita coba ngebayangin gimana orang beneran bakal pake aplikasi ini.

Skenario yang realistis tuh kurang lebih contohnya seperti ini:

  • Nggak ribet dan gampang dimengerti
  • Bener-bener sesuai sama kenyataan. Kayak gimana orang-orang biasanya pake aplikasi atau website kita.
  • Bisa ngecek semua bagian penting. Kayak fitur-fitur utama, alur kerja, dan kemungkinan error.

Misalnya kita lagi uji aplikasi cari makan online nih. Sebagai QA yang mau bikin skenario pengujian real, kita ngikutin aja gimana pengguna sehari-hari nyari makanan di aplikasi itu. Kita bayangin pengguna lagi laper parah, pengen cepet makan, tapi pas buka aplikasi, tiba-tiba menu makanannya susah dicari atau ada error waktu mau checkout. Nah, itu kan bisa bikin pengguna jadi kesel banget, dan mungkin aja mereka bakal cari aplikasi lain yang lebih lancar. Nah, dari situ kita bisa nangkep kalo ada masalah sama pencarian atau proses pembayaran yang perlu diperbaikin sebelum bikin pengguna jadi bete.

Setelah itu baru pikiran edge casesnya, kita cari-cari titik-titik yang mungkin kelewat diujinya, dan coba cari risiko-risiko yang bisa muncul. Jadi kita bisa lebih siap nangkep masalah sebelum nyampe ke user beneran. Bayangin aja kita sebagai user, apa yang bakal mereka lakuin, gimana caranya, dan kondisi apa yang bikin mereka klik ini klik itu.

4. Gunakan Metode Pengujian Beragam

Terapkan metode pengujian yang berbeda, jadi ga cuma satu jenis tes aja, cobain yang lain juga. Kayak non-fungsional testing, security testing, compatibility testing, dan sebagainya. Kenapa? Biar makin peka sama kemungkinan error dan masalah di aplikasi. Dari sini kita lebih punya kesempatan buat mendeteksi potensi masalah yang mungkin terabaikan saat mau rilis.

5. Sering Ngobrol dengan Tim

Dengan ngobrol dengan tim membuka pintu untuk memahami setiap changes dalam kode aplikasi. Kita bisa tau kalo ada perubahan atau tambahan baru di kode. Nah, dari situ, kita bisa dapet info yang penting buat bikin intuisi kita lebih tajam nangkep masalah-masalah yang muncul. Inget, ngobrol itu bagus asal sesuai waktu dan tempat ya gais 😂.

6. Compare dengan Teknik Pengujian Sebelumnya

Kita liat apa yang bisa dipelajarin dari pengalaman sebelumnya. Nih, kita coba cari pola-pola umum dan belajar dari kesuksesan dan kegagalan. Dengan gitu, kita bisa lebih ngerti dan punya intuisi lebih tajam soal area yang mungkin punya risiko lebih tinggi.

Misalnya kita uji aplikasi media sosial. Nah, dari hasil pengujian sebelumnya, kita lihat ada pola dimana kalau ada update baru, seringnya ada bug di bagian komentar atau fitur notifikasi. Dari situ kita jadi punya intuisi yang lebih tajam buat fokus di area-area itu pas uji aplikasi berikutnya, karena kemungkinan besar bakal ada masalah lagi di situ.

Kesimpulan

Meskipun terkadang terdenger remeh, tapi beneran, kadang kita punya feeling yang bisa ngebantu nemuin masalah yang gak ke detect pake metode konvensional. Jadi, selama tetep diakui dan dihargai, intuisi kita insya Allah bisa jadi senjata rahasia buat nyari bug dan ngejaga kualitas aplikasi ya gais.

Hikmah

Pekerjaan menjadi tester bisa lebih efektif, responsif, dan berkinerja tinggi dalam memastikan kualitas aplikasi yang diuji. So monggo di kembangkan dan diasah terus intuisinya temen-temen. Segitu aja dari saya, semoga bermanfaat. Terima kasih. Happy testing!

Referensi

--

--