Tuesday, 28 May 2013

Software Testing





Pada kesempatan kali ini, kita akan membahas akan pentingnya testing untuk memastikan sebuah kualitas software.

Mari kita mulai dari pengertian dasar testing.  
Testing berasal dari kata ‘Test’ merupakan sebuah proses untuk mengetahui item-item pada sesuatu yang sedang menjadi objek testing. Item-item tersebut dianalisa. Dalam konteks kali ini, adalah testing dalam software.

Untuk apakah testing itu dilakukan?
Testing sendiri dilakukan baik oleh orang / tim yang sedang men-developed nya langsung atau orang / tim lain yang memang disengaja untuk dibayar melakukan pengetesan. Testing memiliki tujuan untuk mencari tahu akan keadaan sesungguhnya software dibandingkan dengan keadaan yang direncanakan. Apakah semua yang direncanakan sudah berhasil di implementasikan. Serta untuk mengecek apakah fitur-fitur dalam software tersebut sudah siap dan sesuai. 

Proses testing yang baik dilakukan diseluruh fase developed software. Hal ini dilakukan untuk menvalidasikan dan menverifikasikan semua yang sudah di lakukan dalam proses pembangunannya.
Apa yang dimaksud dengan verifikasi?

Verifikasi adalah sebuah langkah untuk memastikan proses yang dilakukan sudah benar. Verifikasi sendiri biasanya menggunakan metode WhiteBox dalam langkah pengetesannya. White box adalah sebuah langkah pengetesan dengan mengecek terhadap komponen pembangun software tersebut secara langsung.

Sedangkan validasi adalah sebuah metode pengetesan untuk mengetahui bahwa sesuatu / software yang dibangun tersebut sudah sesuai/benar sesuai yang diinginkan pada perjanjian di awal.

Dalam validasi, tidak seperti verifikasi yang langsung melihat pada code/ langkah pembuatannya, tetapi lebih melihat apakah yang dikerjakan sudah tepat dan sesuai dengan proposal kerjasama di awal. Proses validasi ini lebih menggunakan pengetesan secara Blackbox, yaitu pengetesan untuk melihat apakah fungsi-fugsi sudah berjalan terlepas dari coding dan langkah pembangunnya di dalamnya.

Selain dua tipe pengetesan tersebut, masih terdapat enam tipe pengetesan lainnya, yaitu secara unit (pengetesan berdasarkan unit-unit yang di tes), integration ( mengetes apakah satu fungsi dengan fungsi lainnya telah berhubungan dan berjalan dengan baik), functional (mengetes terhadap fungsi-fungsi di dalam keseluruhan produk), system ( mengetes keseluruhan produk dengan menggunakan lingkungan yang berbeda-beda, mengetes apakah aplikasi dapat berjalan dengan baik meskipun sistemnya telah berubah),acceptance ( mengetes dari sisi pelanggan, apakah sudah sesuai dengan ekspetasi pelanggan di awal), Beta ( secara independen untuk mengetahui apakah sudah sesuai dengan ekspetasinya yang di lakukan dari layer customer secara langsung) ataupun regression, yaitu pengetesan yang di lakukan oleh tim developer langsung atau tester untuk mengetes apakah dokumentasi sudah sesuai dengan yang diperlukan oleh user.

No comments:

Post a Comment