作者EricTCartman (阿ㄆㄧㄚˇ)
看板Soft_Job
標題Re: [討論] 重構之前要寫測試 不然不要重構
時間Fri Jul 3 21:58:53 2020
※ 引述《Ghamu (貓丸)》之銘言:
: 但事實上之前都沒寫測試了
: 你怎麼證明他之前是對的呢?
這就是TAD, 一般做法是假設以前人做的是對的
拿以前的output當測資 避免以後的output跟預期結果不同
技術面的錯誤→沒有防呆/沒有釋放資源/overflow/沒有check
這應該不在討論範圍內, 也有客觀標準
行為與邏輯的部分才是有爭議的, 要嘛根本沒規格只有口傳
要嘛就是寫的人弄拙成巧 剛好做對
所以在沒有規格跟明確定義的狀況下寫測試 只是寫的人自己覺得對而已
test code也是code 也一樣要維護 也一樣有可能會寫錯
: 所以我大多都直接給他改下去
: 反正重構後東西也比較清楚
: 即使有錯 也比起蝦雞巴狗爛毛程式碼好除錯
每個人都覺得對方code爛 現在我都用: 我就爛 的心態來寫
: 之前前輩都說會動的程式碼不要去碰
: 然後就一球在那邊
: 我說要改 他就說
: [啊你有寫測試嗎?]
: 開發時程又不允許
你沒聽出話中話 人家前輩是好心人
大家都寫程式 又不是你最聰明 所有人都知道時程不允許
你改了code 出現一堆bug 鍋在你頭上
對方一方面也知道那是爛code不想明講 搞不好寫爛code的人還在公司
一方面也知道重構沒有多少績效 做不好還惹得一身臭 期望值低到爆表
人家處處為你著想 你何苦先入為主
要是我是你同事 一定默默地讓你重構
: 就一球在那邊越來越痛苦
: 會動的爛程式碼越來越多
: 不知道大家怎麼看
ptt都是菁英群
基本上大家寫code都是clean code 還有落實unit test
要不是待在根本沒有legacy code的新創公司
要嘛就是會把數以萬計的legacy code補完unit test的楷模員工
你要是在的公司根本沒有在寫test
說明你公司太爛 八成沒一個同事是鄉民
建議你換好一點的公司 再上ptt跟大家討論 比較有共同基準
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.96.79 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1593784735.A.38E.html
※ 編輯: EricTCartman (1.163.96.79 臺灣), 07/03/2020 22:00:02
1F:推 NDark: GJ 07/03 23:12
2F:推 APTON: XD 07/04 00:12
3F:推 sharek: 中肯酸XD 07/04 00:45
4F:推 labbat: 沒有人寫test 因為tester把設計者氣跑 tester也不想別人測 07/04 01:25
5F:→ allenxxx: 通常自認為完美的程式都會死在外行測試者手上 07/04 01:32
6F:→ allenxxx: 誰規定我一定要照你邏輯操作? 07/04 01:32
7F:推 zased: 那是edge case考慮不周全,所以才需要tester,跳脫思考框架 07/04 10:54
8F:推 Csongs: 每個人都覺人其他人code爛 我可以理解XD 07/04 11:15
9F:推 wulouise: 我也覺得自己以前寫得爛..沒test重構還能確保沒錯很神 07/04 13:19
10F:推 r030515495: 推 中肯回覆 07/04 13:32
11F:→ r030515495: 公司重視的只有產出,而不會在意100%的測試覆蓋率,要 07/04 13:36
12F:→ r030515495: 重構還是先把功能做出,有時間再來寫測試,讓後面的 07/04 13:36
13F:→ r030515495: 維護不會改A壞B 07/04 13:36
14F:推 APTON: 可以看看TDD是怎麼用測試把product code產出來 07/04 15:46
15F:→ lazarus1121: code本來就會因為業務邏輯熟悉程度有好壞之分 07/04 21:40
16F:→ lazarus1121: 對業務夠熟把爛code整理一下也是好事 07/04 21:43
17F:推 mathrew: XDDDD 07/05 12:31
18F:推 gmoz: XDDD 07/05 14:32
19F:→ waterwalk: 厲害了 我也是這樣想所以離職 但是就沒工作了QQ 07/05 19:04
20F:推 wadxmjh: 中肯酸 07/06 00:40
21F:→ shooter555: 中肯 07/06 10:25
22F:→ shooter555: 尤其最後兩段 07/06 10:25
23F:推 csieflyman: 高手都是隨便不爽不要做換公司或爛到說服老闆打掉重練 07/06 14:13
24F:→ csieflyman: 就沒legacy code了 根本就不需要重構及寫測試 尤其是 07/06 14:13
25F:→ csieflyman: 別人寫的程式 07/06 14:13
26F:推 csieflyman: 笨蛋才佔著茅坑(公司)不拉屎(爛code) 高手都是坑滿了 07/06 14:17
27F:→ csieflyman: 之後 換個茅坑再拉屎的好嗎 07/06 14:17
28F:→ accessdenied: 高手們躺著寫code也中槍 07/06 17:21
29F:→ Vitaceae: 還以為凡事必OO凡扣必UT的毒觀念消失了 沒想到還有著魔 07/06 19:55
30F:→ Vitaceae: 的人 07/06 19:55
31F:推 bakedgrass: 酸度有像阿ㄆㄧㄚˇ 07/07 05:45
32F:推 tay2510: 笑死 推這篇 07/07 11:03
33F:推 brianhsu: 最後一段很中肯啊,沒測試的地方還是不要久待 07/07 19:25