pytest(二)兩行代碼就能實現(xiàn)自動化測試嗎? !

但凡有點經驗的python自動化測試工程師或是測試開發(fā)工程師,或多或少都用過unittest翰意。當使用unittest實現(xiàn)測試代碼,首先必須定義一個測試類并繼承unittest.TestCase, 然后在類中實現(xiàn)測試方法。然而在pytest中条辟,卻無需強制使用類聲明,只要一個測試函數(shù)即可宏胯,就像這樣:


就這樣羽嫡,兩行就是實現(xiàn)了自動化測試,是不是很簡單肩袍。

接下來我們看看杭棵,這段代碼是如何在pytest中執(zhí)行的。

首先我們定義了一個測試函數(shù)氛赐,函數(shù)名則以test開頭魂爪。這很重要,當你用pytest 運行一個腳本時艰管,它會收集test為前綴的函數(shù)名的函數(shù)作為測試方法去執(zhí)行滓侍。如果我們把test_add改成tes_add,那么pytest就找不到任何測試用例了。

pytest有一套自己發(fā)現(xiàn)測試方法的規(guī)則牲芋,后面會細說哦粗井。

之后我們在test_add函數(shù)中使用了斷言去判斷測試的檢查點。如果你用過unittest街图,你知道unittest本身提供了很多斷言函數(shù)比如assertEqual等等浇衬。而pytest則直接使用assert,少去了還要查找斷言函數(shù)的麻煩餐济,讓代碼更加簡單和自由耘擂。同時你會發(fā)現(xiàn)斷言如果出錯,錯誤信息如此詳細…當然pytest還提供了異常信息定制化功能絮姆。


講到這里醉冤,大家是不是覺得這段測試代碼里還缺點什么呢秩霍?沒錯,那就是大家熟悉的setup和teardown蚁阳。pytest測試提供了幾個級別的setup/teardown——模塊铃绒,函數(shù),類螺捐,方法颠悬。


我們定義了方法級別的setup/teardown, 運行結果就是你們看到的,熟悉的配方啊定血。然而除了傳統(tǒng)的setup/teardown, pytest還提供了一個更強大的功能fixture——使用fixture簡化了初始和清理代碼的工作流程赔癌, fixture就像函數(shù),有明確的名稱澜沟,測試函數(shù)灾票、模塊、類或整個項目中都可以聲明和激活它們茫虽。雖然pytest支持傳統(tǒng)的setup/teardown, 但fixture是更加值得去使用的刊苍。

現(xiàn)在食材都已經搭配好了,那怎么開燒呢濒析,說白了就是如何運行你的測試代碼如何編寫啦班缰。pytest提供兩種方法,一種就像unittest一樣直接在code里指明悼枢,就像這樣


至此埠忘,小艾已經為大家展示了測試框架中最重要的幾個特性,測試方法馒索、斷言莹妒,異常信息,初始/清理绰上,運行旨怠,測試報告。從下章開始小艾將會一一展開這些特性蜈块,詳細介紹它們的用法鉴腻。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市百揭,隨后出現(xiàn)的幾起案子爽哎,更是在濱河造成了極大的恐慌,老刑警劉巖器一,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件课锌,死亡現(xiàn)場離奇詭異,居然都是意外死亡祈秕,警方通過查閱死者的電腦和手機渺贤,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門雏胃,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人志鞍,你說我怎么就攤上這事瞭亮。” “怎么了固棚?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵统翩,是天一觀的道長。 經常有香客問我玻孟,道長唆缴,這世上最難降的妖魔是什么鳍征? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任黍翎,我火速辦了婚禮,結果婚禮上艳丛,老公的妹妹穿的比我還像新娘匣掸。我一直安慰自己,他們只是感情好氮双,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布碰酝。 她就那樣靜靜地躺著,像睡著了一般戴差。 火紅的嫁衣襯著肌膚如雪送爸。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天暖释,我揣著相機與錄音袭厂,去河邊找鬼。 笑死球匕,一個胖子當著我的面吹牛纹磺,可吹牛的內容都是我干的。 我是一名探鬼主播亮曹,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼橄杨,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了照卦?” 一聲冷哼從身側響起式矫,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎役耕,沒想到半個月后衷佃,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡蹄葱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年氏义,在試婚紗的時候發(fā)現(xiàn)自己被綠了锄列。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡惯悠,死狀恐怖邻邮,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情克婶,我是刑警寧澤筒严,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站情萤,受9級特大地震影響鸭蛙,放射性物質發(fā)生泄漏。R本人自食惡果不足惜筋岛,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一娶视、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧睁宰,春花似錦肪获、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至红符,卻和暖如春青柄,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背预侯。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工致开, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人雌桑。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓喇喉,卻偏偏與公主長得像,于是被迫代替她去往敵國和親校坑。 傳聞我的和親對象是個殘疾皇子个从,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

推薦閱讀更多精彩內容