Menguji Kelas Java Debugging Aplikasi Java

Ingat bagaimana editor Java akan memberi tanda warna pada statemen, untuk kata cadangan akan berwarna biru, dan variable string akan berwarna hijau. }

4.1.5 Menguji Kelas Java

Untuk menguji method greet diperlukan tambahan pada method main seperti dibawah ini. Tambahkan kode disisi kanan seteleh baris public class “Greeter {“ : public static void mainString[] args { Greeter greeter = new Greeter; greeter.greetMickey Mouse; } Disini merupakan tambahan pada bagian atas kelas Greeter : Untuk menguji kelas, perlu menjalankan method main. Sehingga klik pada kepala panah warna hijau pada bagian atas window. Method greet berjalan dan dapat dilihat dibahwa hasil dari panel Output: 83 Hasilnya terlihat seperti ini: Dari hasil terlihat masih ada masalah yaitu tidak ada message dari Mickey Mouse. Secara default, ketika membuat proyek aplikasi Java baru, maka kelas Main secara otomatis juga akan dibuat. Ini dapat dilihat dengan melakukan ekspansi hirarki GreeterJavaProject: 84 Kelas Main menjadi “Main Class” yang berjalan secara default, kapanpun menggunakan chevron hijau. Lakukan Run Main Project untuk project ini. Kemudian dijalankan Main dulu, setelah itu baru dijalankan Greeter. Ini merupakan kerangka kode kosong di dalam kelas Main. Kemudian jalankan kode Greeter. Untuk memperbaiki adanya error, lakukan klik kanan pada GreeterJavaProject pada panel Projects dan pilih Properties. Seperti tampak pada gambar di bawah, pilih kategori Run dan pada field Main Class gunakan tombol Browse untuk memilih Greeter sebagai Main Class: Gunakan ikon chevron hijau lagai untuk melakukan pengujian dan akan diketahui luaran di panel Output seperti berikut ini : Greeting is: Hello, Mickey Mouse Have a great afternoon. Time goes fast. We are already in month 8 of the year

4.1.6 Debugging Aplikasi Java

85 Tetapi ternyata masih ada bug. Sekarang akan dicoba untuk menemukan bug tersebut dan memperbaikinya. Untuk memperbaiki bug maka akan digunakan debugger melalui langkah-langkah yang hati- hati dalam melakukan eksekusi dari method greet: Pada editor Java, temukan pada baris: Calendar myCalendar = Calendar.getInstance; Pada margin di sisi kiri baris kode, klik sekali untuk menandai breakpoint. Maka baris kode akan disorot warna merah: {Bukankah bulannya masih terlihat keliru? Masalah ini dapat ditemukan tanpa menggunakan debugger, tetapi hal ini akan memberi peluang untuk melakukan eksplorasi debugging. Breakpoint merupakan statemen dalam program dimana eksekusi dihentikan sementara pause pada saat program dijalankan dengan debugging dalam kondisi menyala. Ketika eksekusi sampai pada bagian breakpoint, akan terlihat seputar variable untuk melihat bagian dalam programnya.} 86 Lakukan eksekusi dengan debugger dengan melakukan klik pada ikon Debug Main Project pada bagian atas editor. Akan terlihat eksekusi terhenti pada breakpoint dan baris kode disorot warna hijau: {Jika panel Local Variables tidak terlihat, maka pilih Windows Debugging Local Variables untuk menampilkannya. “Step Over” memungkinkan untuk berpindah eksekusi ke depan ke baris berikutnya. Eksekusi akan terhenti lagi dan akan terlihat lagi seputar variabel.} Temukan panel Local Variables pada bagian bawah jendela. Ingat bahwa variable name sekarang mempunyai nilai “Mickey Mouse”. Temukan kendali debugger pada bagian atas jendela dan klik sekali pada ikon Step Over: Terlihat bahwa debugger berpindah ke bawah ke kode yang menetapkan jam saat ini. Baris kode ini kemudian ditandai dengan warna hijau. 87 Klik Step Over lagi dan lihat pada panel Local Variables untuk melihat nilai dari variable hour. Dapat dilihat nilai pada panel Local Variables berubah ketika berpindah ke kode time. Variabel partOfDay akan diatur berdasarkan aliran melalui statemen ifelse. Lakukan klik Step Over sampai ke baris kode berikut: int month = myCalendar.getCalendar.MONTH; Lompati kode int month = myCalendar.getCalendar.MONTH; dan lihat nilai untuk variable month variable seperti tampak pada panel Local Variables. Akhirnya ditemukan nilai month yang salah. Jika ini February, maka month bernilai 2, bukan 1. Klik kendali debugger Continue untuk mengakhiri sesi debugging. Seperti sebelumnya, akan tampak tampilan greeting pada panel Output mengikuti baris kode: System.out.printlnGreeting is: + greeting; 88 Sehingga, apa masih ada yang salah dengan baris kode ini?: int month = myCalendar.getCalendar.MONTH; Sekarang gunakan built-in code dan dokumentasi untuk menhawab masalah ini.

4.1.7 Melengkapi Kode