Monday, April 16, 2018

TDD : Test-Driven Development Python Part 2

สวัสดีครับวันนี้เราจะมาลองเขียน Functional test กันดูนะครับโดยความหมายของเจ้า Functional test นั้นผมได้กล่าวไปแล้ว ผมจะแปะลิงค์ไว้ให้นะครับ

https://softwaredevii.blogspot.com/2018/04/knowledge-tdd-or-test-driven-development.html

โดยเริ่มแรกเราจะมา Test ว่า browser title มี ชื่อว่า To-Do รึป่าว ให้เปิด file functional tests แล้วเขียน code ตามนี้ครับ


จากนั้นให้ลอง run file functional test ปล.ต้อง run server ด้วยนะ


จะพบ ว่ามัน AssertionError ครับ ซึ่งถ้าเราสังเกตดีๆจะพบว่า ในส่วน Browser title ของเรานั่นไม่ได้ชื่อว่า To-Do แต่มันเป็นื่ออื่น ซึ่งถ้าไม่สังเกตดีๆจะไม่รู้เลยว่าทำไม error แบบนี้ ดังนั้นเราจะมาหาทางทำให้มันดูดีขึ้น

เปิด file functional test ขึ้นมาเหมือนเดิมแล้วเขียน code ตามนี้


จากนั้นให้ run functional test ครับ 


จะพว่ามัน AssertionError ครับ แต่ มันจะพบว่ามันจะแจ้งว่า To-Do not found in "Django: the web framwork บลาๆๆ" เราจะรู้แล้วว่า เออออ มัน Error เพราะชื่อ browser title มันไม่ได้ชื่อ To-Do นี่เอง

Implicit wait 

เนื่องจาก บางครั้งเวลาเรา run test เราจะพบว่า เราไม่รู้เลยว่ามันเปิด Browser มา test ยังไงเพราะเวลา test ตัว browser ถูกปิดลงเร็วมากเราจึงจะมาทำให้ browser ปิดช้าลงหน่อยเราจะได้ดูว่ามัน test ยังไง

เปิด file functional test ขึ้นมาเหมือนเดิมแล้วเขียน code ตามนี้


จากนั้นให้ run functional test 


เราจะพบว่า browser จะเปิดประมาณ 3 วินาทีแล้วดับไป

ในตอนนี้ก็จบ Part ที่ 2 แล้วนะครับ ซึ่งก่อนจบในบทความวันนี้เราก็จะมา commit กันก่อนนะครับ

No comments:

Post a Comment