作者k300plus (額頭愛護會-神級守護術師)
看板Soft_Job
標題Re: [討論] 工作上寫單元測試的比例
時間Tue May 14 08:44:14 2024
分享最近遇到的鬼故事
當初開發完A功能後有順手寫了UT確保該功能基本能動
後來有同事在開發B功能時把他的B功能加進去我的UT default flow內
也沒有請我code review
導致我在跑UT時發現不預期的行為
搞了一陣子才發現是他亂用了我的UT
雖然說AB這兩個功能初始化的部分完全相同
寫兩個UT確實是會有很多重複的地方
但一個功能一個UT應該是正確的觀念吧!?
不知大家有什麼想法,或類似案例分享或怎麼改善XD
--
老婆01
https://i.imgur.com/VBSwkje.jpg 老婆02
https://i.imgur.com/wdMQImg.png
老婆03
https://i.imgur.com/RwjkL7K.jpg 老婆04
https://i.imgur.com/wkngu3l.png
老婆05
https://i.imgur.com/s6TJwHK.jpg 老婆06
https://i.imgur.com/xbGd44K.jpg
老婆07
https://i.imgur.com/hWUm4Cc.jpg 老婆08
https://i.imgur.com/zq548Gt.jpg
老婆09
https://i.imgur.com/yjkl8WJ.jpg 老婆10
https://i.imgur.com/PHKGdAN.jpg
老婆11
https://i.imgur.com/UzVuAtY.jpg 老婆12
https://i.imgur.com/qwxYDo5.jpg
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.141.67 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1715647472.A.E4F.html
1F:推 devilkool: 你是對的 05/14 09:11
驚(?)
2F:推 stepnight: 把同事扁一頓 05/14 09:14
好
3F:推 k798976869: 鬼故事在於 他不用找人code review 就可以改東西吧 05/14 09:53
常有的事XD
4F:推 luke72: UT = “unit” test,請他去查查什麼叫unit 05/14 09:57
5F:推 strlen: 這就是為何在台灣9成公司裡 根本不要UI的原因 不但沒有享 05/14 10:35
6F:→ strlen: 受到UT的好處 一堆腦殘還會給團隊添亂 算惹吧 05/14 10:36
7F:→ strlen: UT不是寫了就放著沒事耶 UT也是要跟著程式一起維護的 05/14 10:36
8F:推 prag222: 有一份工作有寫過,因為寫UT才發現自己CODE高耦合 05/14 10:43
9F:→ prag222: 才決定去學設計模式,不過後來工作公司都沒寫單元測試的 05/14 10:44
10F:推 mercurycgt68: 還好我同事寫完測試都會先註解掉assert 才發pr真不 05/14 11:19
11F:→ mercurycgt68: 愧是老鳥 05/14 11:19
12F:推 wuyiulin: 扁你同事+1,在臺灣我們先解決人。 05/14 12:24
好
13F:→ Newtype: 推上版控自動test 跑不過不能merge回主要分支 05/14 12:38
這個補充一下因為是新功能所以還沒加上去pre-test,不然都要先跑過啦
14F:→ labbat: 還有公司沒有版控喔 05/14 13:14
15F:推 KyuubiKulama: 問題是沒有要求code review 05/14 14:47
16F:→ NTUTM04: 無情開扁 05/14 17:33
※ 編輯: k300plus (1.161.177.135 臺灣), 05/14/2024 19:04:31
17F:推 brucetu: 這哪有什麼,就同事寫了個bug的意思啊 05/14 19:55
18F:推 doranako: 你是對的 05/14 19:55
19F:→ brucetu: 等於同事寫了個bug沒人發現就上線,該怎麼處理就怎麼處理 05/14 19:56
20F:→ brucetu: 沒有人能提出線上版本永遠不會出問題的工作方法吧?UT又 05/14 19:56
21F:→ brucetu: 不是銀彈 05/14 19:56
22F:→ k300plus: 不是bug 只是UT跑完的結果不是我原本預期的 05/14 20:32
23F:→ k300plus: 發現是我原文沒說的很清楚XD 05/14 20:34
24F:推 sos20122: 比他資深就請他修或跟他pair 修。比他資淺就自己修吧 05/14 21:41
25F:推 joery: 寫UT讓我很放心改A不會錯到B,也在寫UT時沒有分的很好的程 05/14 23:44
26F:→ joery: 式再次有機會被重構,降低耦合 05/14 23:44
27F:→ Lipraxde: 會改到一起不是說明做的範圍很接近?平常應該會交流吧 05/15 06:38
28F:推 Sunal: 原來現在unit test 已經開始簡稱成UT了 那整合測試呢 IT? 05/15 07:50
29F:推 hellomotogg: UT只出現在JD過 05/16 11:12
30F:推 whatzup1124: Uniqlo 05/16 14:47
31F:→ shadow0326: 我建議寫一個UT的UT,以確保你的UT沒有被改壞 05/17 10:45
32F:→ labbat: 要的功能是 自測 05/17 12:32
33F:推 chi2chi2chi2: 寫兩個UT 如果預期之後有更多UT初始化過程一樣的話 05/18 19:54
34F:→ chi2chi2chi2: 就抽出來reuse 05/18 19:54
35F:推 longlongint: 沒review怎麼進code 05/20 21:04
36F:→ longlongint: 是說 我最近在跟組內學長談UT case要解耦by class測 05/20 21:06
37F:→ longlongint: 試 05/20 21:06
38F:→ longlongint: 學長一直跟我扯整個團隊一起測試就是UT 05/20 21:06
39F:→ longlongint: 好想離職 草包掌權 05/20 21:06
40F:→ longlongint: 沒有UI或是沒有上層帶起來就不能跑 是在UT懶覺嗎 05/20 21:07