คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
					
				
								 ความคิดเห็นที่ 2
																			
								
									
								
														
						
					 ผมไม่แน่ใจว่าคุณสัมภาษณ์งานอะไร  แต่ผมอนุมานว่าเป็นโปรแกรมเมอร์ละกัน
test case มันก็คือการทดสอบโปรแกรมที่เราเขียนนั่นแหละครับ ว่ามันทำงานได้ถูกต้องหรือเปล่า เช่นถ้ากรอกค่า x y มันจะคำนวนออกมาถูกมั๊ย ถ้าใส่อาร์กิวเมนต์ผิด มันจะ fall back อย่างไร แต่ทำระดับสูงด้วยก็จะมีไปถึงการทดสอบประสิทธิภาพของโปรแกรม เช่นว่าคำนวน xx ใช้เวลาเท่าไหร่ กินแรมกินซีพียูไปเท่าไหร่ โดยหลักๆก็คือคุณต้องกำหนดสถานการณ์ขึ้นมาอันนึงที่จะได้ใช้โปรแกรมของคุณ เช่นคุณทำระบบบันทึกข้อมูล ก็กำหนดสถานการณ์ขึ้นมาเป็นการบันทึกข้อมูล และสร้างเงื่อนไขต่างๆ ที่อาจจะเกิดขึ้น เช่น ลืมกรอกวันเกิด เพื่อจะดูว่าโปรแกรมที่คุณเขียนมันจะทำงานอย่างไรเมื่อเจอสถานการณ์นี้ (เช่นถ้าวันเกิดเป็นข้อมูลสำคัญ แล้วโปรแกรมดันปล่อยให้ผ่านทั้งที่ไม่กรอก นี่ถือว่า fail ครับ)
ไม่แปลกใจเท่าไหร่ที่โปรแกรมเมอร์จบใหม่จะไม่ชินกับการทำ test แต่ลองศึกษาไว้เถอะครับ โดยเฉพาะพวก Test-Driven Development เวลาทำงานสเกลใหญ่ๆ จะมีประโยชน์มากๆ (ผมเองเขียน PHP มาสี่ห้าปี ก็เพิ่งมาศึกษา TDD จริงๆจังๆเหมือนกัน) เพราะเราจะได้เขียนโค๊ดไปเทสไป ตรงไหนผิดพลาดก็จะได้แก้มันตั้งแต่ตอนนั้น ดีกว่าว่าปล่อยไปไม่รู้ว่าพลาด พอมารู้ว่ามันพลาดก็คือเขียนโค๊ดครอบไปไม่รู้กี่ชั้นแล้ว ทีนี้จะรื้อก็ลำบากแล้วครับ
								test case มันก็คือการทดสอบโปรแกรมที่เราเขียนนั่นแหละครับ ว่ามันทำงานได้ถูกต้องหรือเปล่า เช่นถ้ากรอกค่า x y มันจะคำนวนออกมาถูกมั๊ย ถ้าใส่อาร์กิวเมนต์ผิด มันจะ fall back อย่างไร แต่ทำระดับสูงด้วยก็จะมีไปถึงการทดสอบประสิทธิภาพของโปรแกรม เช่นว่าคำนวน xx ใช้เวลาเท่าไหร่ กินแรมกินซีพียูไปเท่าไหร่ โดยหลักๆก็คือคุณต้องกำหนดสถานการณ์ขึ้นมาอันนึงที่จะได้ใช้โปรแกรมของคุณ เช่นคุณทำระบบบันทึกข้อมูล ก็กำหนดสถานการณ์ขึ้นมาเป็นการบันทึกข้อมูล และสร้างเงื่อนไขต่างๆ ที่อาจจะเกิดขึ้น เช่น ลืมกรอกวันเกิด เพื่อจะดูว่าโปรแกรมที่คุณเขียนมันจะทำงานอย่างไรเมื่อเจอสถานการณ์นี้ (เช่นถ้าวันเกิดเป็นข้อมูลสำคัญ แล้วโปรแกรมดันปล่อยให้ผ่านทั้งที่ไม่กรอก นี่ถือว่า fail ครับ)
ไม่แปลกใจเท่าไหร่ที่โปรแกรมเมอร์จบใหม่จะไม่ชินกับการทำ test แต่ลองศึกษาไว้เถอะครับ โดยเฉพาะพวก Test-Driven Development เวลาทำงานสเกลใหญ่ๆ จะมีประโยชน์มากๆ (ผมเองเขียน PHP มาสี่ห้าปี ก็เพิ่งมาศึกษา TDD จริงๆจังๆเหมือนกัน) เพราะเราจะได้เขียนโค๊ดไปเทสไป ตรงไหนผิดพลาดก็จะได้แก้มันตั้งแต่ตอนนั้น ดีกว่าว่าปล่อยไปไม่รู้ว่าพลาด พอมารู้ว่ามันพลาดก็คือเขียนโค๊ดครอบไปไม่รู้กี่ชั้นแล้ว ทีนี้จะรื้อก็ลำบากแล้วครับ
 แสดงความคิดเห็น
				
	        
				
	        
				
				 
 
		
				
 	
			
						
 
เทสต์เคสทำยังไงคะ ใครพอรู้บ้าง
ยังไม่ค่อยเข้าใจ ใครที่รู้ช่วยแนะนำหน่อยนะคะ