- #75
- #74
- #73
- #72
- #71
- #70
- #69
- #68
- #67
- #66
- #65
- #64
- #63
- #62
- #61
- #60
為什麼要替軟體進行測試?
寫測試是一件好事對吧?可以自動的驗證程式的行為,確保程式的正確性,這樣就不用每次都要手動測試了。
這是我最初的想法,然後就一頭栽進去寫很多測試,花大把的時間替每個功能都加上測試,然後發現……沒發揮什麼作用。
⚠ 測試只在被執行時才有價值
一個程式的價值體現在它被執行使用的時候,而一段測試的價值也體現在它驗證了程式的某個行為的正確性;就算程式架構得再爛但因為可以運作所以持續的產出價值,同理一段測試再完美但因為沒有驗證到任何行為所以是沒有價值的。
我犯下最大的錯就是單純寫了很多測試但沒有積極的去執行。讓測試盡量跑起來,驗證程式的行為就是測試的價值所在,成功的測試帶給你信心,錯誤的測試替你抓 BUG。
這裡的信心是指確定程式如預期般的行動,你會更有自信的去架構代碼並確保改動不會對被驗證過的的行為造成影響。將測試導入開發流程的重要性不亞於測試本身,不會動的測試就是單純的案例文件,有人沒事會去看不常用且沒有約束力的規格文件嗎?沒有!
- #59
- #58
- #57
- #56
- #55
- #54
- #53
- #52
- #51
- #50
- #49
- #48
- #47
- #46
- #45
- #44
- #43
- #42
- #41
- #40
- #39
- #38
- #37
- #36
- #35
- #34
- #33
- #32
- #31
- #30
- #29
- #28
- #27
- #26
- #25
- #24
- #23
- #22
- #21
- #20
- #19
- #18
- #17
- #16
- #15
- #14
- #13
- #12
- #11
- #10
- #9
- #8
- #7
- #6
- #5
- #4
- #3
- #2
- #1