[討論] 工作上寫單元測試的比例
想請問一下
大家工作上寫單元測試的情況
1.大部分寫完一個功能, 就馬上完成單元測試
2.先把該做的功能寫完, 再回來統一寫單元測試
3.不怎麼寫單元測試
想請問大家工作實際情況大概是哪一種QQ
--
4.別人寫
5. 不寫過不了review
怎麼沒有先寫測試的選項?
沒有硬性規定的話,通常是3,嘴一點會2,最後沒空
沒有寫功能的同時寫單元測試的選項嗎
五樓會左右互搏好羨慕
先有測驗才有設計唄
TDD <------>補UT通常都在兩者之間,我記得板上有pcman
的經驗談
先做功能再做測試的是驗算,先做測驗再做功能的是驗證
然後不管怎麼樣都要有版本管理,沒有版本管理不合作
沒時間3 有時間就2
TDD老哥= =
寫到一半 進度趕不上了 下次再補
這種下次就不會補了吧...
TDD BDD UDD DDD,心得是好累~
2 很趕就3 空閒時補
測試案例要PG兼SA,或SA願意配合才辦得到
不然PG自己寫的測試只是單純crud,對業務毫無幫助
寧可落進度超出合約期限賠錢,也要寫單元測試,不論前
後端
借問,有沒有推薦的Java單元測試文章,希望是比較進階
的內容~
沒在寫 反正有QA
1.
專案開始前:我們希望全部都要寫測試。
專案開始時:每個功能都要寫測試喔。
專案中期:來不及了,有時間再回來補測試。
專案後期:來不及了啦!先做完功能!
專案結束時:既有測試已不合時宜,還有很多功能沒有測試
。
不用想的太死板,我原本也是秉持上線就要寫的原則
有一天老闆要我趕快把某一個服務上線,舊的因為機房要關
需要一週後上線,逼我逼得要死,我就不管3721能跑就丟上去
敝司產品因為產業性質 開發期都偏短
入職一年快半仍未寫過一次Test
什麼測試都不寫,服務上去能跑就謝天謝地了
寫個大概 剩下丟給QA
專案性質管他去死 產品性質會比較嚴格去寫
會不會寫取決於有沒有時間壓力或規定
測試論的價值是要確認規格
但很多情境下規格就是不確定的.特別規格是出錢的人給的時候
當規格變化快得跟翻書一樣的時候就不寫了
什麼是單元測試 怎樣算單元測試 工作11年都沒有特別要
求過
1
不寫還過不了review
推c800910 XD
上層:開發都來不及了 寫測試有什麼產值?
0
java單元測試用c#那本補就好了,沒有差很多
公司是不會要求工程師寫unit test ,不過我寫API自己還
是會用Python 寫unit test 測試一下就是
理想很豐滿現實很骨感
當然選項一,如果公司沒有嚴僅的code review制度,待著
也沒啥前途,對未來沒幫助,快逃喇!
你:開發三天測試兩天,五天交。PM:好,三天交
你:這週要補測試 主管:專案很趕做測試沒產出,不准
不寫過不了review
@luke72 你不要講你要測試兩天 你直接講開發要五天
因為測試對你來說是開發的一部份沒做就沒品質
不要講要補測試直接把修bug的時間斟酌拿來寫測試
我想表達的是測試在大多數PM/主管/老闆眼中,是浪費時間
我也是堅持測試啊,但就是會冒出專家去跟上面說三天完工
我說沒測試沒品質。專家說他從不出錯不需要測試
對無(測試)專業的人不要提測試.就是開發.
如果有一個人出來函扣他覺得他來做比較快 就讓他做
不是啊,一般情況下你也需要自己測試吧,真的有人code寫完
就出嗎? = = 連 build 都不用? 不可能吧
謝謝 @internetms52
還真有人寫完等別人測
反過來說 正常的公司也應該要有QA部門 確保品質
我有遇過故意不設立QA人員的公司
造成的問題就是 因為工程師自己要測
所以任何問題都是工程師的錯
沒測試產出的各種鍋,不一定是製造的人要背,是接刀的背
專家都嘴完就跑去別地方嘴了,交件後再來就是你的責任
qa的測試跟開發的測試我是定位在不同的部分。
沒寫unit test連code review都過不了, 不可能merge
實務上還會另寫integ/E2E test, 達成率至少95%以上
幹麻測試 以後要修bug 就把測試的時間估進去工時
樓上專業,這才是業界生存之道
2然後用class當單位,service、facade、controller這樣
故意不設QA的公司@@...
我比較好奇前端有硬性規定寫ut 的多嗎
同樓上問
單一unit測試只能測幾樣功能
能找出交叉才會觸發的才是專家
一個程式流程跑1000次1次當然是問題,但可怕的通常不是
那個一次
而是架構要改寫
問題沒發散,每錯就是要整個重構
沒有
結案都來不及了
每次都說希望寫 但沒有一次寫過
沒寫過單元測試,自主保證。
你說反了,是要先寫unit test才去寫function才對
5
你講的三種我都做過,還有第四種:TDD 1. TAD,講白了就是先射箭再畫靶,如果你箭射對了那當然沒問題 但如果你一開始就射錯了還忘記拔出來,就是無效的測試 2. 同樣也是TAD,這個是我們被要求做的,code不是我們寫的、但我 們要幫其他team補測試。我主管也覺得很奇怪、我也覺得很奇怪,3
我覺得命題不是寫/不寫。 真的該問的是,工作上 reviewer 也好、或者是開發流程也好, 有沒有辦法【正常的判斷】 test 是不是寫對的。 XD 起碼是 team 能有一定認同的前提。 其實最後都回到 quality check,不然只是繞圈圈而已。 XD17
我想補一個情境 當到新公司或轉到新單位時 發現沒有在做unit test 此時身經百戰寫過上千次unit test的你 會選擇憑一己之力6
底下這是比較「野性」」的作法,算是實務專案的經驗: 其實我覺得你到一個完全沒有測試的專案,要分兩個策略: 1. 補重要主線的 integration test 反正哪邊常被報修就補哪邊。 如果一開始補不上去就先做下一點,理論上常被報修的地方會一直出現在下一點, 累積多了就可以變成1了。1
先說我不是故意要回兩篇, 但剛看到 landlord (就 joey chen, 江湖名 91) 在 FB 的回應,我覺得也蠻好的, 他說他最近在忙沒空過來,我問過他之後幫他轉過來。 以下基本上逐字照轉 (source from )2
因為大家的討論都很基於心法 實作上相對很模糊 利用這個機會也跟大家請教實作上的方式 因為最近工作被指派要針對公司產品的程式做整理,其實運作都還好 只是大家功能是一層疊一層,一堆巢狀邏輯,跟依賴中的依賴7
ㄅ是啊,你應該是先有需求才有測試, 通常是先假設已經在線上的已經經過線上考驗。 如果沒有這種需求,你根本就不應該整理。 我個人認為任何在沒有需求的前提下情況下整理程式碼, 是一個浪費自己時間又沒意義的行為。2
原則上要寫測試的話我會用很古老的 TDD 的方式做,先寫測試之後再寫實作。 現在的話則是寫完測試之後 Copilot 就幫我寫完一半了,然後就開始 review copilot 的 code 了。 目前經驗上能不能寫測試的話我認為有三個維度會是主要影響關鍵,提供參考: 1. 文件是否齊全16
分享最近遇到的鬼故事 當初開發完A功能後有順手寫了UT確保該功能基本能動 後來有同事在開發B功能時把他的B功能加進去我的UT default flow內 也沒有請我code review 導致我在跑UT時發現不預期的行為
16
[心得] 用pycharm 重構 python 單元測試最近這陣子在客戶那邊有機會開始碰到一些 python 的程式, 我過去的經驗都是靜態語言居多,一直想碰一下 python 或 Ruby, 這次倒是個不錯的契機,剛好可以練手一下。 越寫倒是越愛上 python 了。 我對開發工具、開發方式比較熟悉一點,對 python 語言特性不熟,15
[心得] Android TDD 測試驅動開發大家好,我在去年寫了Android TDD 測試驅動開發的系列文章 最近把這系列改編成書出版了,更加了許多章節,已經在天瓏書店上預購。 「Android TDD 測試驅動開發:從 UnitTest、TDD 到 DevOps 實踐」6
Re: [問卦] ChatGPT真的有讓人特別驚艷嗎?那是你不知道怎麼用 (問) 看看別人怎麼做 1.爬蟲 2.資料剖析4
[問卦] 單元測試到底在幹嘛欸欸 窩是準備進資工所的肥肥拉 之前都讀學店,只會硬刻系統 根本沒有什麼開發模式之類的 GIT也不會用3
[轉讓] 單元測試的藝術(線上課程)因故無法如期上課 課程名稱:針對遺留代碼加入單元測試的藝術 課程講師:Joey Chen(91) 轉讓費用:原價13000 上課時間:2022/3/27(日)整天3
[請益] 如何實現單元測試多於整合測試?將單元測試實作於專案時,發現絕大部分API都是針對資料庫做CRUD,這部分程式透過in memory 寫了整合測試,越寫越覺得不對勁,心想單元測試數量不是應該要最多? 網路文 章、影片或實體書籍大多也在探討如何寫單元測試,整合測試資源相對少,在想是不是我 哪裡做錯了,懇請各位大神指教。 --1
Re: [請益] 能力不足該離職嗎?講真的 做功能應該是最簡單的了吧 87%就只是CRUD而已 而且進度那麼趕 程式碼品質 單元測試我看應該也是都不用管 你就先拼出會動的東西 再看前輩怎麼提點你 這樣進步應該最快 最怕就是還沒寫就想放棄這種 這種人在業界不用多久就自己把自己洗出去了 --X
Re: [請益] 如何實現單元測試多於整合測試?你是不是發錯版了阿 台灣業界的什麼單元測試.CI.設計模式不都是拿來嘴的 說到單元測試還要連DB CRUD? 這整個觀念錯誤 台灣業界的單元測試教學文章X
[問卦] 有沒有系統過幾年就突然不能用了?餓死抬頭啦, 阿肥外商文組碼農阿肥啦,最近忙專案在燒,今天好不容易有疫苗假可以休息啦。 是這樣的,阿肥最近在思考一個嚴肅工程問題啦,有沒有一種可能是當初工程師在寫程式 碼,單元測試、整合測試、運轉測試都過了,後來因為公司商業因素專案暫時停止。 過幾年以後,公司接到客戶說要重新啟動,董事長想說一模一樣的系統一模一樣的功能可- 先確認一下,不知道你們是不是用一些潮潮 der 框架, 然後那框架的官方文件給的範例是看起來簡潔漂亮清楚的一兩行 code, (例如 service 裡一個查詢 > return 結果) 然後你們把範例 copy 過來改,直接往裡面塞邏輯? 如果是這樣,可能需要先做的是把 CRUD 分割出去,