日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:如何使用python做單元測試?

很多編程小白不太理解單元測試,為什么要進(jìn)行單元測試呢?很簡單,主要是提高代碼的正確,同時(shí)確保重構(gòu)不出錯(cuò)。接下來我們一起學(xué)習(xí)怎么用python做單元測試吧。

成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括開魯網(wǎng)站建設(shè)、開魯網(wǎng)站制作、開魯網(wǎng)頁制作以及開魯網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,開魯網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到開魯省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!


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

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


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)

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

 

下面幾個(gè)是我常用的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參數(shù)可以打印測試代碼中的輸出,默認(rèn)不打印,print沒結(jié)果
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做單元測試的方法。更多Python學(xué)習(xí)推薦:PyThon學(xué)習(xí)網(wǎng)教學(xué)中心。


本文標(biāo)題:創(chuàng)新互聯(lián)Python教程:如何使用python做單元測試?
本文路徑:http://www.dlmjj.cn/article/ccdesis.html