一名后端開發(fā)所理解的測試

01 為什么需要測試

我們按照產(chǎn)品確定的需求享扔,用編程語言把需求邏輯實現(xiàn)了狱意。但是筋量,怎么驗證我們的代碼實現(xiàn)是符合產(chǎn)品的需求呢烹吵?這個時候碉熄,就需要測試了。

02 測試的分類

就我們常見的測試肋拔,有以下幾種類型锈津。
1)前端功能的手工測試,即像正常的用戶一樣凉蜂,手工使用我們開發(fā)出來的每個功能琼梆,如果軟件的一切流程都符合需求的預(yù)期,就說明測試通過了窿吩。

2) 后端的接口測試茎杂,與前端測試類似,也是通過輸入?yún)?shù)纫雁,請求接口后煌往,獲得響應(yīng)值。通過觀察響應(yīng)值與預(yù)期值的比較轧邪,得出測試結(jié)果刽脖。

以上兩類手工測試的步驟,其實又可以通過腳本錄制或編寫忌愚,實現(xiàn)自動化測試曲管。

3)單元用例測試。這個是從更細(xì)的粒度來對代碼邏輯進行測試硕糊,它關(guān)注的往往是比較單一的小代碼片段院水,一個函數(shù)或方法,就可以編寫對應(yīng)的單元測試癌幕。

4)性能測試。顧名思義昧穿,就是針對性能進行的測試勺远,通過大量的并發(fā)請求,來測試服務(wù)器的處理能力时鸵;通過多任務(wù)處理胶逢,來測試前端渲染的速度,等等饰潜,都是性能測試初坠。

5)安全測試。從安全的角度來對軟件進行測試彭雾,就是類似黑客攻擊的方式碟刺,嘗試找出代碼可能存在的安全漏洞。

03 該怎樣對待測試

在編程界薯酝,有“測試驅(qū)動”的開發(fā)模式半沽,就是在寫代碼前爽柒,先寫測試用例,每次覺得代碼邏輯寫完了者填,就跑一遍測試用例浩村,只有測試通過了才算完成。但是占哟,據(jù)我了解心墅,大部分的開發(fā)人員,包括我榨乎,也沒有能夠按照“測試驅(qū)動”的模式開發(fā)怎燥。

很多時候,我們都是在需求排期壓力下谬哀,匆匆寫完業(yè)務(wù)邏輯就算完成開發(fā)了刺覆。如果要求嚴(yán)格一點的公司,會要求測試用例史煎,但那也是在開發(fā)完需求后谦屑,再按照已完成的邏輯,造出來一些簡單的用例篇梭,其測試點根本無法覆蓋大部分的邊界條件氢橙。

在這么多年的開發(fā)經(jīng)驗里,我覺得測試是我們開發(fā)人員一個很容易忽略的地方恬偷。如果能認(rèn)真對待測試悍手,其實對我們的代碼質(zhì)量會有很大的幫助,也減輕了將來重構(gòu)代碼的負(fù)擔(dān)袍患。有時候坦康,我們要動一塊很久前的代碼,即使這段代碼是自己寫的诡延,也不太記得當(dāng)時的邏輯細(xì)節(jié)了滞欠。如果有完善的測試用例,不管你怎么改肆良,只要保證測試用例能通過筛璧,就基本不會出錯了。

04 后端怎樣做好測試

作為一名后端開發(fā)人員惹恃,首先是要保證單元測試的覆蓋率夭谤。從細(xì)粒度上就保證了覆蓋大部分代碼,那么最終交付的代碼就會比較穩(wěn)定巫糙。當(dāng)你看一個方法不順眼朗儒,要把它重構(gòu)的時候,只要保證對這個方法的調(diào)用方能得到同樣的結(jié)果,就可以放心地改了采蚀。

接口測試是必須的疲牵。我們最終交付出去的,其實是前端需要的一個個接口榆鼠,因此纲爸,對接口進行測試,是對我們工作成果的保障妆够。后端提供的接口识啦,有可能是不同版本的前端都會調(diào)用的,我們每次修改代碼神妹,都必須滿足所有支持的在用版本颓哮。沒有接口測試,前端同學(xué)每次聯(lián)調(diào)都發(fā)現(xiàn)得到不同的結(jié)果鸵荠,是會 kill 人的啊冕茅。

性能測試視情況來做。如果項目的目標(biāo)用戶數(shù)是一個較大的數(shù)量級蛹找,就要考慮系統(tǒng)的性能問題了姨伤。而對于一般的內(nèi)部幾百人使用的系統(tǒng),一般也不會有太大的性能問題庸疾,等客戶反饋操作響應(yīng)慢時乍楚,再關(guān)注性能問題也可。

05 測試工具的使用

對于JAVA程序員來說届慈,單元測試一般是JUnit了徒溪,而接口測試和性能測試,我覺得都可以使用JMeter這款開源工具金顿。這些都是比較成熟臊泌,通用的測試工具,有社區(qū)的支持揍拆,也有大量用戶的使用分享渠概。工具不在多,在于熟練精通礁凡。用好一個工具高氮,自己有能力還可以擴展工具慧妄,使自己的能力得到延續(xù)顷牌,就是很好的選擇。

06 結(jié)語

做任何事情塞淹,都應(yīng)該認(rèn)真對待窟蓝。要想寫出穩(wěn)定、高質(zhì)量的代碼,就要認(rèn)真做好測試這件事运挫;要想在技術(shù)之路上走得更遠状共,就不能滿足于實現(xiàn)需求。每一個好開發(fā)谁帕,都應(yīng)該是一個好測試峡继。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市匈挖,隨后出現(xiàn)的幾起案子碾牌,更是在濱河造成了極大的恐慌,老刑警劉巖儡循,帶你破解...
    沈念sama閱讀 221,406評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件舶吗,死亡現(xiàn)場離奇詭異,居然都是意外死亡择膝,警方通過查閱死者的電腦和手機誓琼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,395評論 3 398
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來肴捉,“玉大人腹侣,你說我怎么就攤上這事∶壳欤” “怎么了筐带?”我有些...
    開封第一講書人閱讀 167,815評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長缤灵。 經(jīng)常有香客問我伦籍,道長,這世上最難降的妖魔是什么腮出? 我笑而不...
    開封第一講書人閱讀 59,537評論 1 296
  • 正文 為了忘掉前任帖鸦,我火速辦了婚禮,結(jié)果婚禮上胚嘲,老公的妹妹穿的比我還像新娘作儿。我一直安慰自己,他們只是感情好馋劈,可當(dāng)我...
    茶點故事閱讀 68,536評論 6 397
  • 文/花漫 我一把揭開白布攻锰。 她就那樣靜靜地躺著,像睡著了一般妓雾。 火紅的嫁衣襯著肌膚如雪娶吞。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,184評論 1 308
  • 那天械姻,我揣著相機與錄音妒蛇,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛绣夺,可吹牛的內(nèi)容都是我干的吏奸。 我是一名探鬼主播,決...
    沈念sama閱讀 40,776評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼陶耍,長吁一口氣:“原來是場噩夢啊……” “哼奋蔚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起烈钞,我...
    開封第一講書人閱讀 39,668評論 0 276
  • 序言:老撾萬榮一對情侶失蹤旺拉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后棵磷,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蛾狗,經(jīng)...
    沈念sama閱讀 46,212評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,299評論 3 340
  • 正文 我和宋清朗相戀三年仪媒,在試婚紗的時候發(fā)現(xiàn)自己被綠了沉桌。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,438評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡算吩,死狀恐怖留凭,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情偎巢,我是刑警寧澤蔼夜,帶...
    沈念sama閱讀 36,128評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站压昼,受9級特大地震影響求冷,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜窍霞,卻給世界環(huán)境...
    茶點故事閱讀 41,807評論 3 333
  • 文/蒙蒙 一匠题、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧但金,春花似錦韭山、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,279評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至似枕,卻和暖如春盖淡,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背菠净。 一陣腳步聲響...
    開封第一講書人閱讀 33,395評論 1 272
  • 我被黑心中介騙來泰國打工禁舷, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人毅往。 一個月前我還...
    沈念sama閱讀 48,827評論 3 376
  • 正文 我出身青樓牵咙,卻偏偏與公主長得像,于是被迫代替她去往敵國和親攀唯。 傳聞我的和親對象是個殘疾皇子洁桌,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,446評論 2 359

推薦閱讀更多精彩內(nèi)容