Re: [請益] 面試官問怎麼Debug,到底怎樣Debug才對

看板Soft_Job作者 (人非腎鹹)時間6年前 (2019/10/02 15:40), 編輯推噓15(15018)
留言33則, 16人參與, 6年前最新討論串1/1
※ 引述《jas1123kimo (傑森)》之銘言: : 最近小弟去面試很多間軟體公司,也拿到很好的Offer : 但每次被問到兩題,我都回答的很不好,想問各位高手看看 : 1. 有沒有跟別人Co-Coding的經驗(真的沒有..) : 這時候該怎回答比較好? : 下一個才是我主要要問的 : 2. 要怎麼Debug及測試 : 因為小弟我之前都在學校,寫的程式不會這麼龐大? : Debug就是設定很多的Pritf看運作的參數 : 或者丟各種測資,而且要每個Function都要跑到 : 但每次這樣回答完 : 面試官都露出應該還有其他的方法的臉看著我。 : 請問還可以怎樣測試或Debug呢 這些只是基本 debug效率和開發效率直接正相關 所以他問你你是如何debug 其實就是在問你開發效率可以有多快 一般學校剛畢業的學生就是你講的那樣,用printf為 但這就相當於告訴面試官 “我的開發效率=普通應屆畢業生” 不過其實有很多手段可以讓你debug效率好幾倍成長 尤其是在多人開發的專案,你還得要面對別人製造的bug 以下有幾個方式 1. 用eslint之類的code style檢查/語法檢查工具(和IDE搭配使用)。 2. 要會用git比對前後版差異,因為很多bug是在新版中才加進來的(有可能是別人寫的)。 簡而言之,要會抓戰犯 3. 會設中斷點 4. 知道如何生成好的 log 或 debug message (分散式系統尤其重要!) 5. unit test / 自動化測試框架 6. code review ----- Sent from JPTT on my Xiaomi Redmi Note 7. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.116.174.173 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1570002008.A.6E7.html

10/02 16:42, 6年前 , 1F
7. 學水管抓漏一樣抓問題點
10/02 16:42, 1F

10/02 17:26, 6年前 , 2F
2,3,4 => printf ...
10/02 17:26, 2F

10/02 18:11, 6年前 , 3F
好像沒有什麼差別耶
10/02 18:11, 3F

10/02 18:23, 6年前 , 4F
.....
10/02 18:23, 4F

10/02 20:06, 6年前 , 5F
5算debug?code review 是什麼?
10/02 20:06, 5F

10/02 20:28, 6年前 , 6F
Code review是預防bug不是debug吧?
10/02 20:28, 6F

10/02 20:39, 6年前 , 7F
這樣答會扣分ㄅ
10/02 20:39, 7F

10/02 20:55, 6年前 , 8F
你是不是剛畢業
10/02 20:55, 8F

10/02 21:00, 6年前 , 9F
你是不是剛畢業+1
10/02 21:00, 9F

10/02 23:23, 6年前 , 10F
1.是指靜態分析? 那個應該抓不到bug
10/02 23:23, 10F

10/02 23:24, 6年前 , 11F
我們公司進code後jenkins有設定就會自動跑UT fail就會亮
10/02 23:24, 11F

10/02 23:24, 6年前 , 12F
紅燈 但大部分bug都是UT pass後發生的
10/02 23:24, 12F

10/02 23:27, 6年前 , 13F
code review能夠看出一些thread unsafe, memory leak等
10/02 23:27, 13F

10/02 23:27, 6年前 , 14F
級的問題 但大部分bug跟這個也比較沒關係
10/02 23:27, 14F

10/02 23:29, 6年前 , 15F
2倒是蠻常用的 有時候上JIRA搜尋一下別的team有沒有解過
10/02 23:29, 15F

10/02 23:29, 6年前 , 16F
類似bug 再diff一下就拾人牙慧把別人的CL拿來用了
10/02 23:29, 16F

10/02 23:42, 6年前 , 17F
static analyze我們公司用coverity三個月做一次 都是一
10/02 23:42, 17F

10/02 23:42, 6年前 , 18F
些很無聊的問題比如unused variable
10/02 23:42, 18F

10/02 23:43, 6年前 , 19F
UT只能防止你把某個component改壞
10/02 23:43, 19F

10/02 23:48, 6年前 , 20F
公司規定是進code前在local端會先做一次UT 進code後jenk
10/02 23:48, 20F

10/02 23:48, 6年前 , 21F
ins會自動做一次 所以基本上main branch code一定都是UT
10/02 23:48, 21F

10/02 23:48, 6年前 , 22F
pass
10/02 23:48, 22F

10/03 01:41, 6年前 , 23F
樓上請教一下貴公司ut是用哪套framework?mock呢?
10/03 01:41, 23F

10/03 09:26, 6年前 , 24F
gmock
10/03 09:26, 24F

10/03 09:45, 6年前 , 25F
gomock有用過 感覺很深奧
10/03 09:45, 25F

10/03 10:52, 6年前 , 26F
5很多人都會說 實際上用的人少的可憐 頂多用中斷點而已
10/03 10:52, 26F

10/04 20:40, 6年前 , 27F
5很奇怪 如果真的有做 unit test那怎麼沒測出bug
10/04 20:40, 27F

10/04 20:42, 6年前 , 28F
應該是說unit test有過 還出現bug代表有條件沒測到
10/04 20:42, 28F

10/05 20:00, 6年前 , 29F
這篇沒特別幫助呵呵
10/05 20:00, 29F

10/08 08:58, 6年前 , 30F
之前面人說都會寫unit test,結果進來有寫的習慣也沒幾個
10/08 08:58, 30F

10/08 08:58, 6年前 , 31F
,沒code review 也就不會有人盯
10/08 08:58, 31F

10/08 16:34, 6年前 , 32F
一堆高手躲推文,笑別人建議沒用,確又不肯出來講清
10/08 16:34, 32F

10/08 16:34, 6年前 , 33F
10/08 16:34, 33F
文章代碼(AID): #1Tb5HORd (Soft_Job)