如果不是主管,在沒有在寫測試的團隊中,怎麼推廣TDD的概念呢 ?
我覺得想把任何技術帶到團隊前,肯定要自己先試試看吧,不好用帶進來只是在找麻煩而已~
在推廣之前,最該先做的就是將自己負責的部分都用TDD的方式去開發,不要因為團隊不重視測試就覺得自己沒必要這樣做,我們要做的是為自己寫測試,並增加開發效率。
通過自己實作過後,肯定會有改變的部分,ex : bug變少、程式碼更簡潔等...,這時候就可以跟主管開一個 1 on 1 會議,討論將TDD帶入團隊的可行性。
如果已經取得主管的同意了,就可以約一個時間跟大家開個會,然後分享TDD的好處,當然要有數據佐證,千萬不要用我覺得...之類的方式去分享,可以說透過 TDD 的方式,讓bug減少了幾%或是程式碼量減少了多少等...。
一個開發模式要一次到位成本是非常高的,所以我們可以一步一步地進行,可以先幫目前重要的 function 加上測試,讓大家先熟悉測試的方法,之後再一步步的轉向 TDD。
畢竟是自己要推的開發模式,當同伴們有問題的時候,肯定是要找你的,所以請將技術弄懂,當然遇到較困難的也可以一起討論該怎麼做,但絕對不能放同伴自身自滅,當個負責的好工程師。
一定會有人覺得這樣不是在找自己麻煩嗎? 我好好地做完工作回家看劇就好,幹嘛這麼累?
我也同意這樣算是增加自己的工作量,但在成為軟體工程師的過程中,也是透過學習他人的分享的文章讓自己變得更強,如果都沒有人分享,沒有stack overflow ,那大家的工作一定會變得困難許多,再者,想成為資深工程師,我認為分享也是必要的技能之一。如果還是覺得麻煩,你可以想想這都為了讓自己薪水變多,或許就不會那麼麻煩了 XD
今天先到這,祝大家中秋節快樂 !!