ว่าฉันมีวิธีเช่นนี้
public void OrderNewWidget(Widget widget)
{
if ((widget.PartNumber > 0) && (widget.PartAvailable))
{
WigdetOrderingService.OrderNewWidgetAsync(widget.PartNumber);
}
}
ฉันมีวิธีการหลายอย่างในรหัสของฉัน (ครึ่งหน้ากับการเรียกใช้ async Web Service)
ฉันกำลังถกเถียงกันว่าเป็นประโยชน์หรือไม่ที่จะให้มันครอบคลุมการทดสอบหน่วย ใช่มีเหตุผลอยู่ที่นี่ แต่มันเป็นเพียงตรรกะยาม (หมายความว่าฉันต้องแน่ใจว่าฉันมีสิ่งที่ฉันต้องการก่อนที่จะอนุญาตให้มีการให้บริการทางเว็บเกิดขึ้น)
ส่วนหนึ่งของฉันบอกว่า "แน่ใจว่าคุณสามารถทดสอบหน่วยได้ แต่ก็ไม่คุ้มค่ากับเวลา" (ฉันอยู่ในโครงการที่ล้าสมัยไปแล้ว)
แต่อีกด้านของฉันบอกว่าถ้าคุณไม่ได้ทดสอบหน่วยและใครบางคนเปลี่ยน Guards ก็อาจมีปัญหาได้
แต่ส่วนแรกของฉันบอกกลับถ้ามีคนเปลี่ยนทหารยามคุณจะทำงานให้พวกเขามากขึ้น (เพราะตอนนี้พวกเขาต้องเปลี่ยนทหารและหน่วยทดสอบทหาร)
ตัวอย่างเช่นหากบริการของฉันมีความรับผิดชอบในการตรวจสอบความพร้อมใช้งานของ Widget ฉันอาจไม่ต้องการให้มีการป้องกันอีกต่อไป หากอยู่ในการทดสอบหน่วยฉันต้องเปลี่ยนสถานที่สองแห่งตอนนี้
ฉันเห็นข้อดีข้อเสียในทั้งสองวิธี ดังนั้นฉันคิดว่าฉันจะถามสิ่งที่คนอื่นทำ
but it is not worth the time" (I am on a project that is already behind schedule).
เราเป็นนักพัฒนาซอฟต์แวร์ เวลาเดียวที่เราอยู่ในตารางคือเมื่อเราตาย :)