亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python單元測試_使用裝飾器實(shí)現(xiàn)測試跳過和預(yù)期故障的方法

系統(tǒng) 1769 0

Python單元測試unittest中提供了一下四種裝飾器實(shí)現(xiàn)測試跳過和預(yù)期故障。(使用Python 2.7.13)

請查考Python手冊中:

https://docs.python.org/dev/library/unittest.html

The following decorators implement test skipping and expected failures:

#以下裝飾器實(shí)施測試跳過和預(yù)期故障:

@unittest.skip(原因)
Unconditionally skip the decorated test. reason should describe why the test is being skipped.

#無條件跳過裝飾測試。 原因應(yīng)該說明為什么要跳過測試。

@unittest.skipIf(條件,原因)
Skip the decorated test if condition is true.

#如果條件為真,跳過裝飾測試。

@unittest.skipUnless(條件,原因)
Skip the decorated test unless condition is true.

# 跳過裝飾的測試,除非條件是真的。

@unittest.expectedFailure
Mark the test as an expected failure. If the test fails when run, the test is not counted as a failure.

#將測試標(biāo)記為預(yù)期的失敗。 如果測試在運(yùn)行時失敗,則測試不會被視為失敗。

(以上采用谷歌翻譯,可能會有差異)

好了,寫段代碼看下,test.py ,使用的Eclipse

            
#coding:UTF-8
import unittest
from test.test_pprint import uni
class Test_ce(unittest.TestCase):
  a=16
  b=10
  
  @unittest.skip('無條件跳過')
  def test_ce1(self):
    self.assertEqual((self.a-self.b), 16)
    #判斷是否相等
    
  @unittest.skipIf(True==1, '條件為真則跳過')
  def test_ce_2(self):
    self.assertFalse(self.a==self.b)
    #判斷是否為False
    
  @unittest.skipUnless(1==1, '條件為假則跳過')
  def test_ce_3(self):
    self.assertTrue(self.a>16)
    #判斷是否為True

  @unittest.expectedFailure
  def test_ce_4(self):
    self.assertFalse(self.a==16)
    
  @unittest.expectedFailure 
  def test_ce_5(self): 
    self.assertFalse(self.a==15)
    
if __name__ == '__main__':
  unittest.main()
          

好的,運(yùn)行一下

            
ssFxu
======================================================================
FAIL: test_ce_3 (__main__.Test_ce)
----------------------------------------------------------------------
Traceback (most recent call last):
 File "D:\Escplise\workspace\Pytest\src\test001\CE.py", line 20, in test_ce_3
  self.assertTrue(self.a>16)
AssertionError: False is not true

----------------------------------------------------------------------
Ran 5 tests in 0.000s

FAILED (failures=1, skipped=2, expected failures=1, unexpected successes=1)
          

好的,我們對第1行代碼進(jìn)行分析:

s:全稱是skipped(跳過)

s:條件為真,所以也是skipped(跳過)

F:條件為真,所以忽略裝飾器,執(zhí)行斷言代碼,顯然是failures(失敗)

x:斷言結(jié)果顯然是失敗的,但是這是在我們意料之中,所以是expected failures(預(yù)期的失敗)

u:斷言結(jié)果顯然是pass,但是我們預(yù)計可能不通過,所以是unexpected successes(意想不到的成功)

即第13行代碼 所示? FAILED (failures=1, skipped=2, expected failures=1, unexpected successes=1)

以上這篇Python單元測試_使用裝飾器實(shí)現(xiàn)測試跳過和預(yù)期故障的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 欧美性禁片在线观看 | 国四虎影永久 | 日本免费一区二区久久人人澡 | 成人午夜在线观看国产 | 国产亚洲片| 四虎永久在线观看免费网站网址 | 真实国语对白视频播放 | 四虎影视在线影院在线观看观看 | 久久国产精品ww | 97影院支持微信微博观看 | 国产精品香蕉 | 免费二区 | 狠狠色先锋资源网 | 看真人一级毛多毛片 | 久久福利青草精品资源站免费 | 国产日韩精品欧美在线ccc | 国产亚洲精品色一区 | 亚洲 国产 日韩 欧美 | 久操视频免费观看 | 五月综合激情网 | 草草影院第一页yycccom | 在线观看免费av网站 | 男人的天堂在线精品视频 | 久久www免费人成高清 | 国产农村妇女毛片精品久久久 | 亚洲精品美女久久777777 | 天天摸日日摸 | 精品在线99 | 色婷婷视频 | 九九九九在线精品免费视频 | 91在线视频网址 | 99婷婷久久精品国产一区二区 | 91在线免费播放 | julia中文在线 | 久草国产精品 | 国产91精品系列在线观看 | 日韩欧美亚洲国产精品字幕久久久 | 国产成人一区二区三中文 | 亚洲欧美一区二区三区九九九 | 免费的一级毛片 | 久久久www成人免费精品 |