Evident Data
Bagaimana membuat maksud dari data yg ditampilkan jelas? Nah berarti ada dua jenis data. Yaitu data masukan dan keluaran. Jadi buatlah relasi antara kedua data tersebut jelas. Bagaimana prosesnya perubahan data tersebut. Karena kita menulis test bukan hanya untuk komputer. tetapi juga untuk orang lain yg akan menggunakan kelas tersebut. jadi dia bisa belajar dari test tersebut bagaimana behaviour dari suatu kelas atau fungsi.
Contohnya kita akan mengubah satu mata uang ke yg lain. dan kita mengambil 1,5 percent komisi. Exchange rate dari USD ke GBP adalah 2:1. Yg kita tukarkan adalah $100. kita akan mendapat 50GBp – 1.5% = 49.25 GBP. KIta dapat menterjemahkannya menjadi test seperti berikut.
Bank bank= new Bank(). bank.addRate("USD", "GBP", STANDARD_RATE); bank.commission(STANDARD_COMMISSION); Money result= bank.convert(new Note(100, "USD"), "GBP"); Assert.AreEquals(new Note(49.25, "GBP"), result);
tapi di test tersebut ga jelas giman relasi antar datanya. darimanakah gerangan datangnnya 49.25 ??? programmer lain mungkin saja kebingugan. apa sih maksud programmer yg dulu nih … bikin kesal saja .. huff
jadi lebih baik kita ubah ke bentuk yg lebih jelas seperti ini …
Bank bank= new Bank(); bank.addRate("USD", "GBP", 2); bank.commission(0.015); Money result= bank.convert(new Note(100, "USD"), "GBP"); Assert.AreEquals(new Note(100 / 2 * (1 - 0.015), "GBP"), result);
nah dengan demikian jelas maksudnya dan programmingnya pun jadi lebih jelas. jadi membantu diri kita sendiri dalam mengkoding dan membantu orang lain yg akan menggunakan code tersebut. sama sama untunglah ….