這周小影很苦逼,由于某位開發(fā)小弟技術(shù)水平有待提高,進(jìn)度一直跟不上。身為產(chǎn)品的我,不得不跑去這位小朋友身邊一行一行代碼邏輯的審閱。
一般測(cè)試反饋問題我只能知道這數(shù)據(jù)顯示不對(duì),但是為嘛不對(duì)這個(gè)問題,一般由開發(fā)自己去從復(fù)現(xiàn)問題里判斷,從而修改密碼邏輯。然而前面提到,這位小朋友連自己代碼出了什么問題都不知道,對(duì)于非開發(fā)出身的我,只能通過數(shù)據(jù)傳輸?shù)暮藢?duì),來判斷哪段代碼邏輯有問題鳥。。。也幸虧只是在IOS上的前臺(tái)測(cè)試,如果是后臺(tái)的代碼邏輯,這個(gè)并不適用鳥。
在這里推薦了一款抓包小工具----Fiddler。

百度對(duì)它的解釋:Fiddler是一個(gè)http協(xié)議調(diào)試代理工具,它能夠記錄并檢查所有你的電腦和互聯(lián)網(wǎng)之間的http通訊,設(shè)置斷點(diǎn),查看所有的“進(jìn)出”Fiddler的數(shù)據(jù)(指cookie,html,js,css等文件,這些都可以讓你胡亂修改的意思)。 Fiddler 要比其他的網(wǎng)絡(luò)調(diào)試器要更加簡(jiǎn)單,因?yàn)樗粌H僅暴露http通訊還提供了一個(gè)用戶友好的格式。
簡(jiǎn)單來說,就是查看你傳輸過程中的數(shù)據(jù)對(duì)不對(duì)?。。。o論是前臺(tái)提交的數(shù)據(jù),還是后臺(tái)返回的結(jié)果都能看見。從此出bug,是前臺(tái)還是后臺(tái)問題,一抓一個(gè)準(zhǔn),究竟怎么看前后臺(tái)數(shù)據(jù)的傳輸呢?用下面兩張截圖,就明白了。
紅框的位置是看前臺(tái)提交的數(shù)據(jù)

下方的紅框位置是看后臺(tái)返回的數(shù)據(jù)。

案例:
小影:怎么關(guān)系亂套了,我添加父親的資料,沒有選擇父親的媽媽,為啥更新后父親的母親項(xiàng)顯示了兒媳婦?
前臺(tái)開發(fā):欸,我是照著后臺(tái)返回的參數(shù)顯示的呀,后臺(tái)傳參數(shù)傳錯(cuò)了。
后臺(tái)開發(fā):什么鬼,你前臺(tái)不發(fā)參數(shù)過來,我怎么會(huì)在母親選項(xiàng)添加數(shù)據(jù),這個(gè)選項(xiàng)不是后臺(tái)處理,是前臺(tái)提交的數(shù)據(jù)。
小影:……(神馬鬼……)
一言不合,抓個(gè)包看看。
復(fù)現(xiàn)問題,前臺(tái)在用戶不填的項(xiàng)目中自行添加了其他參數(shù)值提交到后臺(tái),后臺(tái)無法判斷邏輯,直接接收保存。從此關(guān)系就這么美妙的亂起來鳥。。。。
好吧,終于找到問題是前臺(tái)了,前臺(tái)小弟問,為神馬會(huì)這樣?然后小影倒吸一口冷氣,難道還沒想到是神馬原因?
小影:你復(fù)查代碼,是不是有一段代碼判斷if 母親選項(xiàng)是空,then post 了一個(gè)兒子的couple過去?
前臺(tái)小哥努力查查查后,驚訝道:對(duì)哦,真的有,得去掉才行。
小影內(nèi)心崩潰……
結(jié)語
不過說了這么多,還是想告訴廣大產(chǎn)品好友,在人力緊缺沒有專職的測(cè)試,而你的開發(fā)基友又不給力的情況下,請(qǐng)使用Fiddler,再根據(jù)產(chǎn)品縝密的邏輯判斷能力,發(fā)現(xiàn)bug的問題點(diǎn)吧。