ฉันกำลังเขียน Unit Test สำหรับแอปพลิเคชันที่มีอยู่แล้วมาเป็นเวลานาน วิธีการบางอย่างที่ฉันต้องทดสอบนั้นสร้างดังนี้:
public void someMethod() throws Exception {
//do something
}
หากฉันต้องการทดสอบวิธีการเหล่านี้ ฉันต้องเขียนสิ่งนี้ในการทดสอบหน่วย:
@Test
public void someTest() {
try {
someMethod();
}
catch (Exception e) {
e.printStackTrace();
}
}
เป็นวิธีปฏิบัติที่ดีในการทำเช่นนี้หรือไม่? หรือมีวิธีอื่นในการทดสอบวิธีการเหล่านี้หรือไม่?
ฉันค้นคว้าทางอินเทอร์เน็ตและพบวิธีแก้ปัญหาบางอย่างด้วยคำอธิบายประกอบ @Rule
และ @Test(expected=Exception.class)
แต่นั่นไม่ได้ผล (Eclipse ยังคงแสดงบรรทัด someMethod()
ในการทดสอบว่าผิด) ฉันไม่รู้ว่าสิ่งเหล่านี้เป็นวิธีแก้ปัญหาที่ดีหรือไม่ เพราะฉันยังใหม่กับเรื่องการทดสอบหน่วยทั้งหมด
หากใครที่รู้เรื่องนี้มากสามารถช่วยฉันได้ฉันจะขอบคุณจริงๆ