Pytest系列13 -重復(fù)執(zhí)行用例插件之pytest-repeat的詳細(xì)使用

一晓避、前言

平常在做功能測(cè)試的時(shí)候簇捍,經(jīng)常會(huì)遇到某個(gè)模塊不穩(wěn)定,偶然會(huì)出現(xiàn)一些bug俏拱,對(duì)于這種問題我們會(huì)針對(duì)此用例反復(fù)執(zhí)行多次暑塑,最終復(fù)現(xiàn)出問題來
自動(dòng)化運(yùn)行用例時(shí)候,也會(huì)出現(xiàn)偶然的bug锅必,可以針對(duì)單個(gè)用例事格,或者針對(duì)某個(gè)模塊的用例重復(fù)執(zhí)行多次

二、環(huán)境前提

Python 2.7搞隐、3.4+或PyPy
py.test 2.8或更高版本

三驹愚、安裝插件

pip3 install pytest-repeat -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

四、快速入門

結(jié)合之前講到的失敗重跑劣纲、輸出html報(bào)告插件來敲命令行
兩種方式皆可逢捺,等號(hào)或空格
count=2
count 2
命令行如下:
pytest --html=report.html --self-contained-html -s --reruns=5 --count=2 10fixture_request.py

五、重復(fù)測(cè)試直到失旕尽(-x)
  • 如果需要驗(yàn)證偶現(xiàn)問題劫瞳,可以一次又一次地運(yùn)行相同的測(cè)試直到失敗,這個(gè)插件將很有用
  • 可以將pytest的 -x 選項(xiàng)與pytest-repeat結(jié)合使用绷柒,以強(qiáng)制測(cè)試運(yùn)行程序在第一次失敗時(shí)停止
    py.test --count=1000 -x test_file.py
def test_example():
    import random
    flag = random.choice([True, False])
    print(flag)
    assert flag

執(zhí)行命令: pytest -s --count 5 -x 13repeat.py

六志于、代碼中用@pytest.mark.repeat(count)

如果要在代碼中將某些測(cè)試用例標(biāo)記為執(zhí)行重復(fù)多次,可以使用 @pytest.mark.repeat(count)

@pytest.mark.repeat(5)
def test_repeat():
    print("測(cè)試用例執(zhí)行")
    

執(zhí)行命令: pytest -s 13repeat.py

七废睦、命令行--repeat-scope

命令行參數(shù)
作用:可以覆蓋默認(rèn)的測(cè)試用例執(zhí)行順序伺绽,類似fixture的scope參數(shù)

  • function:默認(rèn),范圍針對(duì)每個(gè)用例重復(fù)執(zhí)行郊楣,再執(zhí)行下一個(gè)用例
  • class:以class為用例集合單位憔恳,重復(fù)執(zhí)行class里面的用例,再執(zhí)行下一個(gè)
  • module:以模塊為單位净蚤,重復(fù)執(zhí)行模塊里面的用例钥组,再執(zhí)行下一個(gè)
  • session:重復(fù)整個(gè)測(cè)試會(huì)話,即所有測(cè)試用例的執(zhí)行一次今瀑,然后再執(zhí)行第二次
    例子1:class
class Test_repeat:
    def test_repeat3(self):
        print("測(cè)試用例執(zhí)行333")

class Test_repeat2:
    def test_repeat3(self):
        print("測(cè)試用例執(zhí)行444")

執(zhí)行命令:
pytest -s --count=2 --repeat-scope=class 13repeat.py

例子2:module

def test_repeat1():
    print("測(cè)試用例執(zhí)行111")


def test_repeat2():
    print("測(cè)試用例執(zhí)行222")


class Test_repeat:
    def test_repeat3(self):
        print("測(cè)試用例執(zhí)行333")

執(zhí)行命令:
pytest -s --count=2 --repeat-scope=module 13repeat.py

兼容性問題
pytest-repeat不能與unittest.TestCase測(cè)試類一起使用程梦。無論--count設(shè)置多少,這些測(cè)試始終僅運(yùn)行一次橘荠,并顯示警告


參考鏈接
https://www.cnblogs.com/poloyy/p/12691240.html

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末屿附,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子哥童,更是在濱河造成了極大的恐慌挺份,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,000評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贮懈,死亡現(xiàn)場(chǎng)離奇詭異匀泊,居然都是意外死亡优训,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,745評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門各聘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來揣非,“玉大人,你說我怎么就攤上這事躲因≡缇矗” “怎么了?”我有些...
    開封第一講書人閱讀 168,561評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵大脉,是天一觀的道長(zhǎng)搞监。 經(jīng)常有香客問我,道長(zhǎng)箱靴,這世上最難降的妖魔是什么腺逛? 我笑而不...
    開封第一講書人閱讀 59,782評(píng)論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮衡怀,結(jié)果婚禮上棍矛,老公的妹妹穿的比我還像新娘。我一直安慰自己抛杨,他們只是感情好够委,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,798評(píng)論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著怖现,像睡著了一般茁帽。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上屈嗤,一...
    開封第一講書人閱讀 52,394評(píng)論 1 310
  • 那天潘拨,我揣著相機(jī)與錄音,去河邊找鬼饶号。 笑死铁追,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的茫船。 我是一名探鬼主播琅束,決...
    沈念sama閱讀 40,952評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼算谈!你這毒婦竟也來了涩禀?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,852評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤然眼,失蹤者是張志新(化名)和其女友劉穎艾船,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,409評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡丽声,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,483評(píng)論 3 341
  • 正文 我和宋清朗相戀三年礁蔗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了觉义。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雁社。...
    茶點(diǎn)故事閱讀 40,615評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖晒骇,靈堂內(nèi)的尸體忽然破棺而出霉撵,到底是詐尸還是另有隱情,我是刑警寧澤洪囤,帶...
    沈念sama閱讀 36,303評(píng)論 5 350
  • 正文 年R本政府宣布徒坡,位于F島的核電站,受9級(jí)特大地震影響瘤缩,放射性物質(zhì)發(fā)生泄漏喇完。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,979評(píng)論 3 334
  • 文/蒙蒙 一剥啤、第九天 我趴在偏房一處隱蔽的房頂上張望锦溪。 院中可真熱鬧,春花似錦府怯、人聲如沸刻诊。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,470評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽则涯。三九已至,卻和暖如春冲簿,著一層夾襖步出監(jiān)牢的瞬間粟判,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,571評(píng)論 1 272
  • 我被黑心中介騙來泰國打工峦剔, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留档礁,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,041評(píng)論 3 377
  • 正文 我出身青樓羊异,卻偏偏與公主長(zhǎng)得像事秀,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子野舶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,630評(píng)論 2 359

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