Golang程序測試

軟件開發(fā)離不開軟件測試观话,測試是程序質(zhì)量的有力保障,也是程序開發(fā)者的有力輔助工具。當我們添加或者更新了新的功能是察纯,通過測試單元我們能清楚的了解到程序功能是否正常、性能是否提高等针肥。

Go語言作為一門先進的現(xiàn)代計算機編程語言饼记,為程序測試提供了很多開箱即用的工具。Go語言在標準準庫中提供了一個專門用于測試的代碼包testing祖驱。這個代碼包提供了編寫代碼測試源碼文件的一切握恳。使用go test命令便可執(zhí)行測試源碼文件的測試程序。

一功能測試

測試員嗎文件總應該與被它測試的源碼文件廚藝同一個代碼包內(nèi)捺僻。我們在編寫測試源碼文件總是會用到標準庫代碼包testing的API乡洼。testing包維Go語言的代碼包提供自動化測試支持。它與go test命令協(xié)同使用自動執(zhí)行目標代碼包中的任何測試函數(shù)匕坯。

1.1編寫測試函數(shù)

在測試源碼文件中束昵,針對測試目標源碼文件的功能測試總是以函數(shù)為單位。被用于測試的函數(shù)的名稱和簽名形如:
func TestXxx(t *testing.T)
通常把Xxx替換成被測試的函數(shù)名稱葛峻。我們可以利用*testing.T類型的參數(shù)t上的一些方法對功能測試的過程進行記錄和控制锹雏。

  • 常規(guī)記錄
    參數(shù) t 上的Log和Logf方法一般用于記錄一些常規(guī)信息,以展示測試程序的運行過程以及被測試程序的實時狀態(tài)术奖。t.Log和t.Logf分別與fmt.Println和fmt.Printf函數(shù)的使用方法類似礁遵。
  • 錯誤記錄
    參數(shù)t上的Error和ErrorF方法被用于錯誤記錄轻绞。當被測試程序的狀態(tài)不正確時,調(diào)用t.Error或者t.Errorf方法佣耐,及時記錄當前的錯誤狀態(tài)政勃。調(diào)用t.Error相當于先后調(diào)用了t.Log和t.Fial方法,而調(diào)用t.Errorf則相當于先后調(diào)用了t.LogF和t.Fial方法兼砖。
  • 致命錯誤記錄
    參數(shù)t上的Fatal和Fatalf方法被用于記錄被測試程序的致命錯誤狀態(tài)( 使得測序程序無法繼續(xù)運行的錯誤 )奸远。調(diào)用t.Fatal相當于先后調(diào)用了t.Log和t.FialNow方法,而調(diào)用t.Errorf則相當于先后調(diào)用了t.FatalF和t.FialNow方法讽挟。
  • 失敗標記
    參數(shù)上的Fail方法被用于標記當前測試函數(shù)中的測試是失敗的懒叛。對t.Fail方法的調(diào)用不會終止當前測試函數(shù)的執(zhí)行。當時耽梅,此函數(shù)的測試結果已經(jīng)被標記為失敗了薛窥。
  • 立即失敗標記
    方法t.FailNow用于標記當前測試函數(shù)的測試是失敗的,并立即終止當前測試函數(shù)的執(zhí)行眼姐。
  • 失敗判斷
    t.Failed方法用于獲得當前測試函數(shù)中的測試是否已經(jīng)被標記為失敗拆檬。
  • 忽略測試
    調(diào)用t.SkipNow的方法用于標記當前測試函數(shù)為已經(jīng)被忽略的并且立即終止該函數(shù)的執(zhí)行。
1.2功能測試的額運行

Go語言提供了專門用于程序測試命令--go test命令妥凳。

執(zhí)行go test的三種方式:

  • go test testPackage 命令后面跟被測試代碼包竟贯。
  • go test xxx_test.go xx.go 命令后面跟測試源碼文件及其測試的源碼文件,用于執(zhí)行代碼包中的部分測試逝钥。
  • go test -run=Regxp testPackage使用標記-run ,-run標記的值為一個正則表達式屑那,與正則表達式匹配的功能測函數(shù),才會在此次的測試過程中被執(zhí)行艘款。
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末持际,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子哗咆,更是在濱河造成了極大的恐慌蜘欲,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,496評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件晌柬,死亡現(xiàn)場離奇詭異姥份,居然都是意外死亡,警方通過查閱死者的電腦和手機年碘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,187評論 3 385
  • 文/潘曉璐 我一進店門澈歉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人屿衅,你說我怎么就攤上這事埃难。” “怎么了?”我有些...
    開封第一講書人閱讀 157,091評論 0 348
  • 文/不壞的土叔 我叫張陵涡尘,是天一觀的道長忍弛。 經(jīng)常有香客問我,道長考抄,這世上最難降的妖魔是什么剧罩? 我笑而不...
    開封第一講書人閱讀 56,458評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮座泳,結果婚禮上,老公的妹妹穿的比我還像新娘幕与。我一直安慰自己挑势,他們只是感情好,可當我...
    茶點故事閱讀 65,542評論 6 385
  • 文/花漫 我一把揭開白布啦鸣。 她就那樣靜靜地躺著潮饱,像睡著了一般。 火紅的嫁衣襯著肌膚如雪诫给。 梳的紋絲不亂的頭發(fā)上香拉,一...
    開封第一講書人閱讀 49,802評論 1 290
  • 那天,我揣著相機與錄音中狂,去河邊找鬼凫碌。 笑死,一個胖子當著我的面吹牛胃榕,可吹牛的內(nèi)容都是我干的盛险。 我是一名探鬼主播,決...
    沈念sama閱讀 38,945評論 3 407
  • 文/蒼蘭香墨 我猛地睜開眼勋又,長吁一口氣:“原來是場噩夢啊……” “哼苦掘!你這毒婦竟也來了?” 一聲冷哼從身側響起楔壤,我...
    開封第一講書人閱讀 37,709評論 0 266
  • 序言:老撾萬榮一對情侶失蹤鹤啡,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后蹲嚣,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體递瑰,經(jīng)...
    沈念sama閱讀 44,158評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,502評論 2 327
  • 正文 我和宋清朗相戀三年隙畜,在試婚紗的時候發(fā)現(xiàn)自己被綠了泣矛。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,637評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡禾蚕,死狀恐怖您朽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤哗总,帶...
    沈念sama閱讀 34,300評論 4 329
  • 正文 年R本政府宣布几颜,位于F島的核電站,受9級特大地震影響讯屈,放射性物質(zhì)發(fā)生泄漏蛋哭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,911評論 3 313
  • 文/蒙蒙 一涮母、第九天 我趴在偏房一處隱蔽的房頂上張望谆趾。 院中可真熱鬧,春花似錦叛本、人聲如沸沪蓬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,744評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽跷叉。三九已至,卻和暖如春营搅,著一層夾襖步出監(jiān)牢的瞬間云挟,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,982評論 1 266
  • 我被黑心中介騙來泰國打工转质, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留园欣,地道東北人。 一個月前我還...
    沈念sama閱讀 46,344評論 2 360
  • 正文 我出身青樓休蟹,卻偏偏與公主長得像俊庇,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子鸡挠,可洞房花燭夜當晚...
    茶點故事閱讀 43,500評論 2 348

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

  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理辉饱,服務發(fā)現(xiàn),斷路器拣展,智...
    卡卡羅2017閱讀 134,631評論 18 139
  • 1. Java基礎部分 基礎部分的順序:基本語法彭沼,類相關的語法,內(nèi)部類的語法备埃,繼承相關的語法姓惑,異常的語法,線程的語...
    子非魚_t_閱讀 31,598評論 18 399
  • 轉(zhuǎn)至元數(shù)據(jù)結尾創(chuàng)建: 董瀟偉按脚,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,690評論 0 9
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,766評論 25 707
  • L小姐最近又找了一份兼職于毙,是在一所老年大學兼職教一群老頭老太太樂理,大概和她一直以來的富婆夢有關吧辅搬,L小姐一直想做...
    相濡以火鍋閱讀 378評論 1 2