中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

怎么使用python做單元測試

發布時間:2020-11-09 11:07:00 來源:億速云 閱讀:119 作者:小新 欄目:編程語言

這篇文章主要介紹怎么使用python做單元測試,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

python內置了一個unittest,但是寫起來稍微繁瑣,比如都要寫一個TestCase類,還得用 assertEqual, assertNotEqual等斷言方法。 而使用pytest運行測試統一用assert語句就行,兼容unittest,目前很多知名開源項目如PyPy,Sentry也都在用。關于pytest的使用可以參考其官方文檔,雖然有很多高級特性,但是掌握其中一小部分基本就夠用了。

下面是py.test的基本用法,以常見的兩種測試類型(驗證返回值和拋出異常)為例:

def add(a, b):
    """return a + b
 
    Args:
        a (int): int
        b (int): int
 
    Returns:
        a + b
 
    Raises:
        AssertionError: if a or b is not integer
 
    """
    assert all([isinstance(a, int), isinstance(b, int)])
    return a + b
 
 
def test_add():
    assert add(1, 2) == 3
    assert isinstance(add(1, 2) , int)
    with pytest.raises(Exception):    # test exception
        add('1', 2)

基本使用就是這么簡單。真實場景下遠遠比這個復雜,甚至有時候構造測試的時間比寫業務邏輯的時間還要長。但是再復雜的邏輯也是一點點功能堆積,如果可以確保每一部分都正確,整體上是不會出錯的。單元測試同時也提醒我們,函數完成的功能盡可能單一,這樣才利于測試。

 

下面幾個是我常用的pytest命令:

py.test test_mod.py   # run tests in module
py.test somepath      # run all tests below somepath
py.test -q test_file_name.py    # quite輸出
py.test -s test_file_name.py    # -s參數可以打印測試代碼中的輸出,默認不打印,print沒結果
py.test test_mod.py::test_func  # only run tests that match the "node ID",
py.test test_mod.py::TestClass::test_method  # run a single method in

以上是怎么使用python做單元測試的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

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

AI

顺义区| 淮阳县| 梧州市| 祁东县| 桃园县| 海南省| 三台县| 澜沧| 区。| 泽普县| 金华市| 岳池县| 辰溪县| 白朗县| 铁岭市| 石首市| 宝鸡市| 大冶市| 芦溪县| 桑植县| 临朐县| 临桂县| 双鸭山市| 岳阳市| 永宁县| 曲阜市| 盐山县| 常熟市| 广元市| 容城县| 永安市| 昭觉县| 仁寿县| 苏尼特右旗| 南陵县| 乾安县| 磐安县| 日照市| 南京市| 潮州市| 台州市|