suhe arie's pages

Programmer juga manusia

Towards bug-free software – Unit Testing dengan JUnit 4

Unit testing menjadi semakin populer beberapa tahun belakangan ini, seiring dengan permintaan akan peningkatan kualitas software yang mendekati sempurna. Meskipun sebuah aplikasi yang 100% ‘bug free’ tidak akan pernah ada, tetapi setidaknya ada beberapa hal yang bisa dilakukan untuk menuju ke arah tersebut. Salah satunya adalah dengan mengimplementasikan unit testing.

Secara sederhana, unit testing dapat diartikan sebagai pengujian/testing terhadap satuan terkecil atau komponen dari sebuah software atau aplikasi untuk memastikan bahwa komponen tersebut bekerja dengan baik, sebelum melakukan testing terhadap aplikasi secara keseluruhan. Metode ini sebenarnya bukan hal yang sama sekali baru. Banyak orang sudah melakukan hal ini sejak lama dengan cara manual. Setelah komponen selesai di-develop, programmer atau tester akan melakukan test secara manual terhadap komponen tersebut dengan memberikan berbagai macam input and menganalisa output yang diberikan oleh komponen tersebut. Hal ini tentunya membutuhkan waktu yang panjang dan bisa jadi merupakan sesuatu yang membosankan, karena harus dilakukan berulang-ulang sampai semua skenario selesai diuji dan memberikan hasil sesuai ekspektasi. Inilah yang akhirnya memunculkan ide untuk membangun framework untuk melakukan unit testing secara otomatis (automated unit testing). Metode ini mengarah pada sesuatu yang dinamakan Test Driven Development, dimana skenario test didefinisikan terlebih dahulu, bahkan sebelum aplikasinya sendiri mulai didevelop.

Dengan unit test otomatis, semua skenario test bisa dijalankan secara otomatis, berulang-ulang, tanpa melibatkan interaksi manusia. Unit test penting untuk dilakukan secara terus menerus, berulang-ulang – setiap kali kode aplikasi mengalami perubahan – untuk memastikan bahwa setiap komponen masih berfungsi dengan benar setelah adanya penambahan fitur atau perbaikan logika di dalam komponen tersebut. Dengan demikian, tester bisa mengalihkan fokus pada testing terhadap aplikasi secara keseluruhan. JUnit (http://www.junit.org/) adalah framework unit test yang populer untuk aplikasi yang dibangun dengan Java. Untuk melakukan unit test, programmer perlu menulis kode tambahan (selain kode aplikasi itu sendiri) yang memberikan berbagai macam input dan mengindikasikan output yang diharapkan. Hal ini biasanya dilakukan terhadap setiap method dari setiap class, yang bisa dianggap sebagai unit terkecil dari aplikasi. Release terakhir dari JUnit adalah JUnit 4 yang mengimplementasikan annotation untuk mempermudah programmer untuk menuliskan test class.

OK, let’s get started.. Continue reading

Advertisements

October 26, 2012 Posted by | Java | , , | 1 Comment