สวัสดีครับพี่น้อง หลังจากห่างหายจากการเขียนไปนาน เนื่องจากภารกิจรัดตัว วันนี้ขอนำเสนอเรื่องราวเบาๆเกี่ยวกับ Retest, Confirmation test และ Regression test แล้วกันครับ
มาเริ่มกันจากสองคำแรกก่อน Retest กับ Confirmation test จริงๆแล้วสองคำนี้มีความหมายเท่ากันเลยครับ
Retest = Confirmation test คือ การ test เพื่อ confirm ว่าปัญหาที่เคยเจอก่อนหน้านี้ถูก fixed ไปแล้ว ตัวอย่างเช่น เรา test software เจอบั๊กแล้ว report ไป เมื่อทาง Dev แก้มาแล้วเราเอา software กลับมาแล้วเทสตรงจุดที่เราเคยเจอ bug เพื่อ confirm ว่า bug นั้นถูกแก้ไปแล้วจริงๆ อันนี้เรียกว่า retest หรือ confirmation test
เที่ยบเท่าได้กับการที่ลูกค้าหรือคนใช้งาน software แจ้ง bug มา แล้วทีม developer แก้ปัญหา แล้วส่งมาให้เราทำเทส การเทสตรงจุดที่ลูกค้ารีพอร์ตปัญหาเพื่อคอนเฟิร์มว่าปัญหานั้นถูกแก้ไปแล้ว นั่นคือการ retest หรือการทำ confirmation test นั่นเอง
ส่วนอีกคำหนึ่ง Regression test นั้นคือการ test เพื่อตรวจสอบ side effect ที่เกิดจากการ Change:
Change ในที่นี้หมายถึง
1. Change in software code – คือ การแก้ไข หรือ เปลี่ยนแปลงของ Code นั่นเอง
2. Change in platform/OS/related software – คือ การเปลี่ยน platform หรือ OS หรือแม้แต่ Database ที่เรา Run software ของเราบนนั้น ยกตัวอย่างเช่น มี Windows 7 ออกมาใหม่ ถ้าเราจะเอา Software ของเราไป run บนนั้น ก้อถือได้ว่าเป็นการเปลี่ยนแปลงของ Platform/OS ดังนั้นจึงต้องมีการรัน Regression test เพื่อดู side effect ที่เกิดจากการเปลี่ยนแปลง OS นั้น โดยปกติ การ run regression test ในกรณีเหล่านี้ เรียกได้อีกอย่างว่าการทำ Qualification Test (QT)
โดยปกติ การทำ Regression test ที่ดีที่สุดในแง่ของ Quality คือ การ run test ทุก function ทุก feature ที่มีใน Software ของเรา แต่…. วิธีนี้ก็ถือได้ว่าเป็นวิธีที่แย่ที่สุดในแง่ของ Test efficiency (ใช้ effort เยอะ แต่ได้ผลตอบแทนน้อย คือ เจอบั๊กน้อยเมื่อเทียบกับ effort ที่ใช้ไปนั่นเอง) เว้นแต่ว่า เรามีAutomation Test เข้ามาช่วย
ฉะนั้น การจะทำ Regression test ให้ได้ผลดีที่สุด ต้องมีการทำ Impact Analysis ก่อน ว่าการ Change ที่เกิดขึ้นนั้น มีโอกาสกระทบส่วนไหนใน Software บ้าง Tester จึงค่อยตามไป Test เฉพาะส่วนนั้นๆ
ต้องขอโทษด้วยที่ใช้ภาษาไทยสลับภาษาอังกฤษเยอะนะครับ แฮ่ะๆ
2 Responses to Retest VS Regression testing
Chayatorn
May 26th, 2010 at 10:54 am
มี Test Tool ตัวไหนแนะนำบ้างไหมครับ… ผมเหนื่อยจะขาดใจแย้ว
Kanoon
July 9th, 2010 at 7:28 pm
ขอบคุณ คุณ Nutdanai มากค่ะ
สำหรับความรู้
เพิ่งจบใหม่ ได้ทำงานด้านนี้พอดีเลยค่ะ แต่บังเอิญความรู้ด้านนี้ค่อนข้างน้อยมากค่ะ
Test Tools ที่ใช้ทำ automation test ตอนนี้คือ TestComplete (http://www.automatedqa.com/products/testcomplete/)
แต่มีค่าใช้จ่ายนะค่ะ หรือลองโหลด Demo มาเล่นก่อนก็ได้ค่ะ หวังว่าคงช่วยคุณ Chayatorn ได้บ้างนะค่ะ