Testing Manifesto Part 1
Pada meetup Malang Quality Assurance kemarin (11/12/2018), kami membahas tema tentang testing manifesto, dengan narasumber dari PT. Sepulsa Teknologi Indonesia, diantaranya adalah mbak Dinar Trifiana, mbak Diana Yulinda, dan mbak Fransiska Maya Ariana. Berikut rangkuman materi dari narasumber terkait testing manifesto di acara meetup rutin MQA.
Bermula dari lahirnya istilah dari agile manifesto, kini banyak perusahaan dan startup-startup di dunia yang menggunakan prinsip agile dalam software development. Banyak sekali keuntungan dari penerapan agile dalam perusahaan, akan kami bahas apa itu agile di artikel berikutnya.
Di samping penerapan agile manifesto yang sedang booming saat ini, lahir istilah testing manifesto yang digunakan sebagai prinsip dalam pengujian sistem yang mendukung prinsip agile manifesto. Meskipun kita sebagai QA sudah nyaman dengan cara lama dalam testing aplikasi di step akhir development, namun testing manifesto perlu diterapkan di mindset tim. Perbedaan antara testing manifesto dengan asal testing (kita sebut saja testing metode kuno), lumayan banyak loh perbedaannya, tapi nggak sampai menggunung sih hehehe. Tapi dari perbedaan prinsip testing manifesto dengan testing metode kuno akan sangat berpengaruh terhadap proses development.
In 2013 we did a talk an agile testing at a conference. We wanted a memorable way to summarize the key learnings of talk. inspired by the agile manifesto we decided to try an agile testing manifesto [Sam Laing and Karen Greaves]
Salah satu dari pengaruh dari testing manifesto adalah dengan kondisi adanya kebutuhan untuk mengukur dan meningkatkan upaya pengujian, kita sebagai seorang QA dapat mengevaluasi dan meningkatkan seberapa baik kita melakukan software testing. Sedangkan hal itu tidak bisa didapatkan jika kita menggunakan testing metode kuno yang hanya ada di step akhir proses development.
Masih banyak lagi hal-hal yang kita lakukan yang sebenarnya jauh sekali dari istilah agile manifesto. Diantaranya QA tidak bisa bekerja sampai development selesai, ada tekanan di akhir sprint, saling blaming kalau ada bug, dan masih banyak lagi.
Yuk kita bahas aja satu-satu dari point testing manifesto yang mencerahkan mindset kita. For a better tester ! Cheers!
Terdapat lima point dalam testing manifesto, antara lain:
- Testing throughout over testing at the end.
- Preventing bugs over finding bugs.
- Testing understanding over checking functionality.
- Building the system OVER breaking the system.
- Team responsibility for quality OVER tester responsibility.
Mari kita bahas sambil ngopi, menggunakan bahasa yang lebih simple.
Testing Secara Berkala
Kalau kita melihat proses development yang lama (mungkin dari kita masih ada yang menggunakan), dapat kita lihat proses testing aplikasi dilakukan di akhir proses development. Dengan cara lama tersebut seorang tester akan kewalahan di akhir proses development karena dia harus melakukan full test aplikasi yang belum pernah dia test sebelumnya. Dalam testing manifesto tester dianjurkan untuk melakukan testing beriringan dengan proses development, jadi tidak terpisah atau membentuk fase sendiri melainkan jadi satu dengan proses development.
Mencegah Munculnya Bug
Seorang ahli strategi militer Cina, Sun Tzu pernah berkata “Kemenangan terbesar adalah yang tidak memerlukan pertempuran”. Hal tersebut bisa kita terapkan dalam proses development aplikasi, dimana kita lebih fokus untuk mencegah munculnya bug daripada menemukan bug. Bagaimana hal ini dapat dilakukan ? Baik, mari kita mulai dengan mengetahui bagaimana bug itu muncul. Ada beberapa faktor yang dapat memunculkan bug, diantaranya adalah requirement yang kurang lengkap atau kurang detail. Untuk mengurangi kemunculan bug alangkah baiknya kita tulis dulu seperti apa requirement dari fitur yang akan kita kerjakan sebelum memulai menulis code. Semua itu dapat dilakukan dengan berkomunikasi dengan sesama anggota team untuk benar-benar membangun aplikasi yang berkualitas.
Memahami apa yang di testing
Sebagai seorang tester, tidaklah cukup jika hanya melakukan testing tanpa adanya improvement / masukan terhadap apa yang test. Jika seorang tester hanya melakukan pengecekan fungsional dan tidak memahami seperti apa kebutuhan user yang akan menggunakan aplikasi maka peran seorang tester akan dipertanyakan ketika semua test sudah otomatis. Disinilah peran tester sebenarnya dibutuhkan, bagaimana dia bisa memberikan feedback terhadap apa yang sedang di test.