91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python單元測試中有哪些裝飾器

發布時間:2020-11-25 15:33:54 來源:億速云 閱讀:397 作者:Leah 欄目:編程語言

Python單元測試中有哪些裝飾器?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

Python單元測試unittest中提供了一下四種裝飾器實現測試跳過和預期故障。

請查考Python手冊中:

#以下裝飾器實施測試跳過和預期故障:

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

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

@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.

#將測試標記為預期的失敗。 如果測試在運行時失敗,則測試不會被視為失敗。

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

好了,寫段代碼看下,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()

好的,運行一下

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行代碼進行分析:

s:全稱是skipped(跳過)

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

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

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

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

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

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新沂市| 枣庄市| 灵川县| 丹江口市| 潜山县| 昌黎县| 六枝特区| 永新县| 汉阴县| 太仓市| 泰安市| 武汉市| 金沙县| 礼泉县| 玉龙| 富川| 永年县| 博湖县| 中西区| 翁牛特旗| 仙游县| 沙洋县| 绥江县| 漯河市| 青岛市| 绥滨县| 高雄市| 泸溪县| 元氏县| 正安县| 营口市| 仁怀市| 华安县| 六盘水市| 平潭县| 都江堰市| 响水县| 蒲江县| 土默特左旗| 屏边| 迁西县|