作者VFCanisLupus (CanisLupus)
看板Soft_Job
標題Re: [請益] 測試程式問題
時間Mon Jul 15 09:48:14 2019
懂你的意思,假如說redis mongodb 那些並沒有單元測試的模組或套件(我還沒花時間找先
假設),那可以用docker的方式進行。
那這樣是不是違反了單元測試的F.I.R.S.T 要點的 F與I ??
微服務用的是Spring Cloud,照上面前輩這樣子做的話我做單元測試要用docker 架redis r
abbitmq MySQL mongodb (可能服務發現也要啟動起來), 這樣每次測試應該是沒辦法2秒
內執行完了。
期間只要有任何一部分沒成功啟動或者連線失敗都回造成測試失敗。
後寫測試T要點應該早就違反了,先不討論
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.242.203.105 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1563155296.A.3B0.html
1F:推 jack0204: 你單元測試時還想測redis跟DB就已經違反了07/15 09:54
是的
2F:推 tofuflower: 和 DB 互動的底層測試我不知道有更好的做法07/15 10:05
3F:→ tofuflower: 但至少開發商務層的時候我不需要跑 dao 的 unit test07/15 10:06
4F:→ tofuflower: 另外我在寫 dao 層的時候不會讓服務發現混進去07/15 10:07
5F:→ tofuflower: dao 就關心和 dao 的互動07/15 10:07
6F:→ tofuflower: 更正,dao 層只關心和 DB 的互動07/15 10:07
好的 十分感謝您
※ 編輯: VFCanisLupus (27.242.203.105 臺灣), 07/15/2019 10:20:26
※ 編輯: VFCanisLupus (27.242.203.105 臺灣), 07/15/2019 10:26:13
7F:推 Hevak: 測試沒真的太慢的話強烈建議不要mock DB,就慢兩秒給他起來 07/15 12:46
8F:→ Hevak: ,那一點點毛時間不會影響生產力,mock造成的誤差事後要追 07/15 12:47
9F:→ Hevak: 都會追到哭出來 07/15 12:47
10F:→ Hevak: 有跑有效的測試比跑符合基礎教義的測試重要 07/15 12:47