Friday, June 10, 2005

Jester-the JUnit test tester.

ในสภาพแวดล้อมแบบ extreme programming
testing คือ key สำคัญตัวหนึ่ง
แต่ปัญหาก็คือ เราจะมั่นใจในตัว test ได้อย่างไร

วิธีการหนึ่งก็คือใช้ coverage tool ในการ monitor
testing process เพื่อที่สรุปได้ว่า source code
ที่เรา test คิดเป็นกี่เปอร์เซนต์ของ source code
ทั้งหมด
ตัวอย่างของ coverage report ของ Tapestry project

ตัว Jester เสนออีก idea ในการ test tester
ก็คือ ตัวมันจะทำการแก้ไข source code
บางส่วน (source ของโปรแกรมที่จะ test)
ก่อนที่จะ run test program
จากนั้นก็ทำการ run test
ถ้า test ผ่าน แสดงว่า test case นั้นยังไม่ครอบคลุม
source code ในจุดที่ jester แก้ไข

จุดใน source code ที่ jester จะทำการแก้ไข
ประกอบด้วย
  • แก้ไขพวกตัวเลข เช่น จาก 0 เป็น 1
  • แก้ไข boolean จาก true->false, false -> true
  • เปลี่ยนจาก if ( เป็น if (true ||
  • เปลี่ยนจาก if ( เป้น if (false &&

จะเห็นว่าเป็นการแก้ไขแบบ simple มากๆ
แต่ก็มีโอกาสทำให้ logic ของโปรแกรมเปลี่ยนแปลงได้

Related link from Roti

"Matisse", NetBeans Form Designer

ไม่รู้ว่าเห็นกันหรือยังครับ
Project Matisse

ผมได้ดู demo แล้ว
น่าสนใจมาก ดูมันเป็นธรรมชาติดี
โดยเฉพาะเส้น guild line ที่ช่วยในการ align component
ทำให้ชีวิตง่ายขึ้นเยอะ

Note: demo ที่ผมดู ช่วงต้นๆภาพจะหาย
ต้องรอสักพักถึงจะมีภาพ

Related link from Roti

Tapestry DatePicker Component Patch

DatePicker Component มี bug เมื่อใช้กับ IE 6

Related link from Roti

avoiding too many classes in CSS

วันนี้อ่าน blog ของ Joshuaink
เรื่อง avoiding-classitis
เป็นเรื่องการหลีกเลี่ยงการใช้ class ใน css มากเกินไป (overuse)
ซึ่งจะช่วยให้เรา maintain site ได้ง่ายขึ้น

Related link from Roti

Thursday, June 09, 2005

message ท่วมหัว

หลังจากพาลูกและแม่เด็กไปพักผ่อนริมทะเล
กลับมาถึงบ้าน
พ่อเด็กเจอ tapestry mailing list 120 กว่าฉบับ
feed ใน blogline + NetNewsWire อีกจำนวนหนึ่ง
นั่งอ่านจนหัวโงกเงกไปมาแล้ว
(ง่วงโว้ย)

Related link from Roti