一直對TDD很猶豫... 讀完後,決定好好的寫TDD了...
不想要再為了改個地方,而怕東怕西... 決定用這個可以放輕鬆的開發方法..
待續...
不想要再為了改個地方,而怕東怕西... 決定用這個可以放輕鬆的開發方法..
- What is legacy code
legacy code與non-legacy code的差別 - "test"
接手的人不敢亂改,但如果有test機制,就能夠一步步修改維護 - Test Coverings
將程式佈滿測試,就不會害怕去改變他 - Legacy Management Streategy
- Identify change points
- Find an inflection point
- Cover the inflection point a.
- Break external dependencies
作者舉在testing時,重視測試結果,而常綁死gui的實作,造成testing不易
作者寫了CustomerView的interface,當測試時,就可在不改變結構下,丟空的實作做測試,有mock的感覺 - Break internal dependencies
在測試時是不必要的地方(如產生暫存等),就繼承該class,直接orverriding掉,不要做任何事即可,有stub的感覺 - Write tests
- Make changes
- Refactor the covered code.
待續...
沒有留言:
張貼留言