真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯網站制作重慶分公司

python中單元測試指的是什么-創(chuàng)新互聯

創(chuàng)新互聯www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!

創(chuàng)新互聯建站專業(yè)網站設計制作、網站建設,集網站策劃、網站設計、網站制作于一體,網站seo、網站優(yōu)化、網站營銷、軟文營銷等專業(yè)人才根據搜索規(guī)律編程設計,讓網站在運行后,在搜索中有好的表現,專業(yè)設計制作為您帶來效益的網站!讓網站建設為您創(chuàng)造效益。

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

在python中,單元測試是用來對一個模塊、一個函數或者一個類來進行正確性檢驗的測試工作。

python中單元測試指的是什么

單元測試

通常是測試一小塊代碼的功能,比如一個函數,類的一個方法。

單元測試通常是開發(fā)人員做的一種測試,通常是測試函數,方法這種級別的代碼塊的。單元測試大都是 設計出不同的調用參數來調用函數,來看 函數 的輸出是否符合預期。當然如果你的代碼寫的不好的話,單元測試也會比較麻煩。比如一個功能模塊沒有內聚到函數中,而是分散在代碼文件里面。那樣,就不容易用一個函數調用對這些功能進行測試。

使用pytest進行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)

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

下面幾個是我常用的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中單元測試指的是什么的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯-成都網站建設公司行業(yè)資訊頻道!


網站欄目:python中單元測試指的是什么-創(chuàng)新互聯
文章起源:http://weahome.cn/article/djdsjj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部