หัวข้อ
- #การทดสอบหน่วย
- #การพัฒนาแบบคนเดียว
- #เอเลี่ยน (Alien)
- #การทดสอบแบบรวม
- #การเขียนการทดสอบ
สร้าง: 2024-05-16
สร้าง: 2024-05-16 16:01
“ผลที่ได้ไม่ควรน้อยกว่าต้นทุนที่เสียไป นั่นคือ การเขียนโค้ดทดสอบไม่ควรใช้เวลานานกว่าการพัฒนาแอปพลิเคชัน”
เขียนการทดสอบจนเวลาหมด?
ก่อนที่จะปล่อยแอปพลิเคชันออกสู่สาธารณะ ฉันวางแผนที่จะเขียนโค้ดทดสอบเบื้องต้นก่อน อันที่จริงแล้วการทำให้กระบวนการทดสอบเป็นแบบอัตโนมัติจึงเป็นเรื่องที่ดีที่จะเขียนไว้ตั้งแต่ตอนนี้เพื่อไม่ให้เกิดปัญหาในภายหลัง
ลำดับความสำคัญของการทดสอบที่ฉันคิดไว้คือ
การทดสอบโดยมนุษย์ > การทดสอบแบบผสานรวม (เฉพาะ provider) > การทดสอบหน่วย > การทดสอบ widget และการทดสอบการยอมรับ
“วิธีที่ดีที่สุดคือให้มนุษย์ทดสอบ”
ฉันวางแผนที่จะเริ่มต้นด้วยการทดสอบแบบผสานรวมเพื่อตรวจสอบฟังก์ชันการทำงานของผู้ใช้โดยคร่าวๆ และเมื่อผ่านการทดสอบครั้งแรกแล้วก็ถือว่าโอเคแล้วใช่ไหม?
“ทดสอบว่าชิ้นส่วนย่อยๆ ทำงานได้ดีหรือไม่”
อันที่จริงแล้ว เนื่องจากไม่มีใครมา merge โค้ด หรือทำอะไรแบบนั้น (เพราะเป็นการพัฒนาคนเดียว) จึงทำให้ลำดับความสำคัญของการทดสอบหน่วยลดลง ฉันวางแผนที่จะตรวจสอบคร่าวๆ ว่ามันทำงานได้หรือไม่ก่อนที่จะปล่อยแอปพลิเคชัน และหลังจากนั้นค่อยเขียนโค้ดทดสอบหน่วยทีหลัง ถ้ามันทำงานได้แสดงว่าฉันพัฒนาเสร็จแล้ว และตราบใดที่ไม่มีการอัปเดตหรือเพิ่มฟีเจอร์ใหม่ๆ โอกาสที่จะเกิดบั๊กก็มีน้อย
“จริงๆ แล้วก็คือการทดสอบ provider เน้นไปที่ตรงนี้เลย”
ในแอปพลิเคชันที่ฉันสร้างขึ้น ฉันคิดว่ามันคือการตรวจสอบ provider ฉันไม่มีเวลาที่จะสร้างใหม่ทั้งหมดและเนื่องจากฟังก์ชันการทำงานส่วนใหญ่ใช้ riverpod ดังนั้นการทดสอบส่วนนี้เพียงอย่างเดียวก็ช่วยลดโอกาสที่บั๊กจะเกิดขึ้นได้มากแล้ว ฉันคิดแบบนั้น
“มันสำคัญนะ…แต่ถ้าทำแบบนี้ เวลาจะหมดไปหมด”
การตรวจสอบฟังก์ชันการทำงานของผู้ใช้และการทดสอบ widget นั้นสำคัญมากจริงๆ แต่ปัญหาคือ…การเขียนโค้ดทดสอบส่วนนี้ใช้เวลานานมาก มันยากที่จะตรวจสอบทุกเงื่อนไขและการเขียนทั้งหมดก็แทบจะเป็นไปไม่ได้ และการทดสอบแบบนี้ก็ไม่ได้รับประกันความปลอดภัย 100% ดังนั้นฉันจึงคิดว่ามันไม่คุ้มค่าเท่าไหร่ ฉันคิดว่าการทดสอบ provider ในการทดสอบแบบผสานรวมและถ้าพบว่ามีส่วนไหนที่ทำงานผิดพลาด ก็ให้แจ้งเตือนผู้ใช้หรืออะไรทำนองนั้น…และอัปเดตส่วนนั้นๆ ทีหลังก็ได้
ดูเหมือนจะไม่รับผิดชอบเท่าไหร่ แต่คิดว่าวิธีนี้ดีที่สุดแล้ว
อันที่จริงแล้วการทดสอบก็เหมือนกับการทำให้เป็นแบบอัตโนมัติ การทำให้กระบวนการทดสอบที่แต่เดิมต้องให้คนทดสอบทีละขั้นตอนเป็นแบบอัตโนมัติช่วยประหยัดเวลาได้ ซึ่งเป็นวิธีที่ดี
เนื่องจากเวลาเป็นสิ่งสำคัญ ฉันจึงต้องเร่งพัฒนาสิ่งที่จำเป็นก่อนและปล่อยแอปพลิเคชันให้เร็วที่สุด
เวลาไม่ค่อยมี ต้องรีบพัฒนา
เกี่ยวกับนักพัฒนา
แอปพลิเคชันหาคู่ระดับโลก เอเลี่ยน (Alien) กำลังพัฒนาและดำเนินการโดยคู่รักนานาชาติ
YouTube : https://www.youtube.com/@AlienApp
อีเมล : slugj2020@gmail.com
ความคิดเห็น0