亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 編程 > Python > 正文

python 幾種常用測(cè)試框架

2019-11-11 06:11:38
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
測(cè)試的常用規(guī)則一個(gè)測(cè)試單元必須關(guān)注一個(gè)很小的功能函數(shù),證明它是正確的;每個(gè)測(cè)試單元必須是完全獨(dú)立的,必須能單獨(dú)運(yùn)行。這樣意味著每一個(gè)測(cè)試方法必須重新加載數(shù)據(jù),執(zhí)行完畢后做一些清理工作。通常通過(guò)setUp()和setDown()方法處理;編寫執(zhí)行快速的測(cè)試代碼。在某些情況下,測(cè)試需要加載復(fù)雜的數(shù)據(jù)結(jié)構(gòu),而且每次執(zhí)行的時(shí)候都要重新加載,這個(gè)時(shí)候測(cè)試執(zhí)行會(huì)很慢。因此,在這種情況下,可以將這種測(cè)試放置一個(gè)后臺(tái)的任務(wù)中。采用測(cè)試工具并且學(xué)著怎么使用它。在編寫代碼前執(zhí)行完整的測(cè)試,而且在編寫代碼后再重新執(zhí)行一次。這樣能保證你后來(lái)編寫的代碼不會(huì)破壞任何事情;在提交代碼前執(zhí)行完整的測(cè)試;如果在開發(fā)期間被打斷了工作,寫一個(gè)打斷的單元測(cè)試,關(guān)于你下一步將要開發(fā)的。當(dāng)你回來(lái)工作時(shí),你能知道上一步開發(fā)到的指針;單元測(cè)試函數(shù)使用長(zhǎng)的而且具有描述性的名字。在正式執(zhí)行代碼中,可能使用square()或sqr()取名,但是在測(cè)試函數(shù)中,你必須取像test_square_of_number_2()、test_square_negativer_number()這些名字,這些名字描述更加清楚;測(cè)試代碼必須具有可讀性;單元測(cè)試對(duì)新進(jìn)的開發(fā)人員來(lái)說(shuō)是工作指南。

二、常見的測(cè)試框架

2.1 Unittest

unittest是Python內(nèi)置的標(biāo)準(zhǔn)類庫(kù)。它的API跟java的JUnit、.net的NUnit,C++的CppUnit很相似。

通過(guò)繼承unittest.TestCase來(lái)創(chuàng)建一個(gè)測(cè)試用例。

具體請(qǐng)參考 文檔 。

舉個(gè)例:

import unittestdef fun(x):    return x + 1class MyTest(unittest.TestCase):    def test(self):        self.assertEqual(fun(3), 4)

執(zhí)行后成功。

但是,如果將期望的結(jié)果改成5,則執(zhí)行的結(jié)果如下圖所示:

2.2 Doctest

doctest 模塊會(huì)搜索那些看起來(lái)像交互式會(huì)話的 Python 代碼片段,然后嘗試執(zhí)行并驗(yàn)證結(jié)果.即使從沒(méi)接觸過(guò) doctest,我們也可以從這個(gè)名字中窺到一絲端倪。“它看起來(lái)就像代碼里的文檔字符串(docstring)一樣” 如果你這么想的話,就已經(jīng)對(duì)了一半了。

舉個(gè)例子:

def square(x):    """Squares x.    >>> square(2)    4    >>> square(-2)    4    >>> square(5)    25    """    return x * xif __name__ == '__main__':    import doctest    doctest.testmod()

當(dāng)執(zhí)行該代碼后,會(huì)執(zhí)行文檔內(nèi)>>> 后面的測(cè)試代碼,并與下一行的結(jié)果進(jìn)行比對(duì)。執(zhí)行的結(jié)果如下:

但是,如果我們把結(jié)果改一下,square(2)的結(jié)果改成5,測(cè)試代碼如下:

def square(x):    """Squares x.    >>> square(2)    5    >>> square(-2)    4    >>> square(5)    25    """    return x * xif __name__ == '__main__':    import doctest    doctest.testmod()

執(zhí)行的測(cè)試結(jié)果如下所示:

2.3 py.test

py.test是unittest的替代工具。

盡管它是一個(gè)功能豐富、靈活的測(cè)試框架,但是它的語(yǔ)法很簡(jiǎn)單。創(chuàng)建一個(gè)單元測(cè)試就像編寫一個(gè)模塊一樣。相比unittest,實(shí)現(xiàn)相同的測(cè)試功能,py.test做的事情更少。

py.test詳細(xì) 文檔 。

首先,安裝py.test

pip install pytest

第二步,編寫測(cè)試代碼

def func(x):    return x + 1def test_answer():    assert func(3) == 5

第三步,執(zhí)行測(cè)試代碼。

  找到pytest安裝路徑。用其所在的解析器(python.exe)執(zhí)行test.py ,執(zhí)行命令比如:

執(zhí)行的結(jié)果如下圖所示:

2.4 Nose

Nose是對(duì)unittest的擴(kuò)展,使得python的測(cè)試更加簡(jiǎn)單。nose自動(dòng)發(fā)現(xiàn)測(cè)試代碼并執(zhí)行,nose提供了大量的插件,比如測(cè)試輸出的xUnitcompatible,覆蓋報(bào)表等等。

nose的詳細(xì)文檔: https://nose.readthedocs.org/en/latest/

注意:nose本身是支持python3的,但是很多它的插件不支持。

2.5 tox

最大的特色,是自動(dòng)最測(cè)試環(huán)境的管理以及使用多個(gè)解析器配置進(jìn)行測(cè)試。

tox的詳細(xì)文檔: http://testrun.org/tox/latest/

2.6  Unittest2

是unitest的升級(jí)版。對(duì)API進(jìn)行了改善以及更好的診斷語(yǔ)法。

unittest2的詳細(xì)文檔: https://pypi.python.org/pypi/unittest2

首先,安裝

pip install unittest2

為了以后能在unittest與unittest2之間進(jìn)行切換,最好的代碼編寫方式如下:

import unittest2 as unittestclass MyTest(unittest.TestCase):    ...

2.7 mock unittest.mock是用來(lái)測(cè)試python的庫(kù)。在python3.3版本以后,這個(gè)是一個(gè)標(biāo)準(zhǔn)庫(kù)。對(duì)老版本來(lái)說(shuō),使用pip install mock 進(jìn)行安裝。

mock的精髓在于,你可以使用模擬的對(duì)象來(lái)替代你的系統(tǒng)的一部分,然后驗(yàn)證后續(xù)的執(zhí)行是否正確。
mock的詳細(xì)文檔:http://www.voidspace.org.uk/python/mock/
下一篇我們重點(diǎn)講講nose的使用方法。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
黄黄的网站在线观看| 这里只有精品99re| 日韩精品视频免费| 91精品国产黑色瑜伽裤| www.成人精品免费网站青椒| 91国内在线播放| 91香蕉视频mp4| 91九色在线播放| 亚洲成人最新网站| 日本电影一区二区三区| 久久99蜜桃综合影院免费观看| 一本加勒比波多野结衣| 国产又粗又黄又爽视频| 国产欧美日本一区二区三区| 成人黄页毛片网站| 青青久久av北条麻妃黑人| 蜜桃视频在线播放| 99riav视频| 久久青草免费| 精品久久中出| 欧美优质美女网站| 欧美一级xxx| 中文无字幕一区二区三区| 99久热在线精品视频观看| 欧美国产成人精品| 视频直播国产精品| 四虎在线视频| 欧美视频13p| 天天草夜夜骑| 亚洲天堂最新地址| 99久免费精品视频在线观78| 综合伊思人在钱三区| 最新国产精品久久精品| 国产成人久久精品一区二区三区| 色婷婷香蕉在线一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 色综合久久中文字幕综合网小说| 91精品国产综合久久久久久蜜臀| 2018中文字幕一区二区三区| 日韩成人激情| 国产精品亚洲电影久久成人影院| 亚洲熟妇无码一区二区三区| 免费国产黄色网址| 一级日本黄色片| 欧美/亚洲一区| 国产乱人伦真实精品视频| 成人在线电影网站| 亚洲高清一二三区| 加勒比婷婷色综合久久| 亚洲色图av在线| 亚洲欧美偷拍三级| 亚洲美女久久精品| 国语自产精品视频在线看抢先版图片| 一区二区成人国产精品| 久播影院第一理论片| 日本在线观看免费视频| 性欧美极品xxxx欧美一区二区| 国产精品高清在线观看| 国产桃色电影在线播放| 欧美h版在线观看| 久久综合色婷婷| 国内不卡的二区三区中文字幕| 欧美日韩国产片| 毛片网站在线看| 国产福利视频在线播放| 波多野结衣的一区二区三区| 国产va免费精品观看精品视频| 神马一区二区三区| 激情五月色综合国产精品| 国产精品久久久久久五月尺| 91丨porny丨中文| 一区二区三区 在线观看视| 国产日本欧美一区二区| 国产一区二区三区小说| 99久久国产精| 久久全国免费视频| 久久成人精品视频| 亚洲超丰满肉感bbw| www.青草| 久久精品视频在线看| 国产高清在线一区| youjizzjizz亚洲| 久久精品九色| 国产精品久久久久毛片| 欧美少妇一区二区三区| 男女午夜刺激视频| 日韩美女视频在线观看| 免费三级在线观看| 久久国产乱子伦免费精品| 亚洲色图35p| 日韩在线视频一区| 国产日韩精品一区二区| 国产精品九九| a4yy在线播放免费观看视频| 神马久久影视大全| 中文字幕乱码一区二区| 999国产精品视频免费| 精品国产拍在线观看| 少妇av在线播放| 日韩毛片免费观看| 国产精品一线天粉嫩av| 妞干网这里只有精品| 日韩欧美一区二区三区四区五区| 国产精品亚洲无码| 69久久夜色精品国产69| 欧美乱人伦中文字幕在线| 日韩三级免费观看| 天堂网视频在线观看| 秋霞在线午夜| 国模冰冰炮一区二区| 国产综合婷婷| 国产又色又爽又高潮免费| 欧美性xxxx图片| 丰满人妻一区二区三区大胸| 亚洲xxxx18| av一本在线| 久久国产精品久久久| 黄色污网站在线观看| 都市激情亚洲色图| 国产成人一区二区精品非洲| 婷婷视频在线播放| 久久久成人av| 亚洲图片小说区| 欧美体内she精高潮| 在线网址91| 亚洲av成人无码一二三在线观看| 精品亚洲第一| 亚洲a一区二区三区| 中文字幕一区二| 国产精品久久久久永久免费看| 欧洲av一区二区| 国产精品久久久久野外| 99久久国产综合精品成人影院| 亚洲最新在线| 制服丝袜av在线| 国产91免费观看| 亚洲成人一区在线观看| 日韩av在线不卡| 久久黄色片视频| 久久网一区二区| 成人在线播放网址| 91综合在线| 99日韩精品| 国产一级大片免费看| 久久一二三国产| 久久久精品国产sm调教| 日本三级一区| 日韩中文字幕久久久经典网| 天天摸在线视频| 人妖精品videosex性欧美| 日韩精品视频一二三| 亚洲欧美久久234| h视频免费观看| 在线观看国产精品91| 日韩av高清不卡| 奇米色在线视频| 久久99国产综合精品女同| 国产一区二区久久久久| 久久久无码精品亚洲日韩按摩| 亚洲图片激情小说| 国产午夜亚洲精品午夜鲁丝片| 91精品麻豆日日躁夜夜躁| av网站免费在线看| 国产精品久久久久久久久久久久久久久久久久| 7777精品伊人久久久大香线蕉超级流畅| 红桃视频在线观看一区二区| 中文字幕综合在线| 亚洲色图狂野欧美| 91精品影视| 国产福利a级| 国模一区二区三区白浆| 日韩中文字幕网| 你懂的国产在线| 欧美精品成人网| 国产精品久久久久久久天堂| 黄色小视频免费看| 伊人成人在线| 亚洲色图都市小说| 自拍偷自拍亚洲精品播放| 国产欧美成人xxx视频| 久久无码高潮喷水| 国产偷窥老熟盗摄视频| 欧美videos另类精品| 91尤物国产福利在线观看| 一级黄色片免费看| 日日夜夜天天综合入口| 国产一区二区三区在线观看免费视频| 2017亚洲男人天堂| 国产精品怡红院| 日韩二区三区在线| 欧美国产激情二区三区| 日韩欧美一区二区三区在线视频| 91丨porny丨对白| 女人黄色免费在线观看| 色偷偷www8888| 在线精品一区二区三区| 国产情侣久久久久aⅴ免费| jyzzz在线观看视频| 欧美va亚洲va在线观看蝴蝶网| 秋霞午夜鲁丝一区二区老狼| 天堂蜜桃一区二区三区| 91日韩一区二区三区| 欧美色图亚洲视频| 日本在线中文字幕一区| 26uuu国产| 国产精品一区不卡| 成人精品在线观看| 欧美虐宫另类残忍视频| 国产精品久久久久久久app| 中文字幕一区二区视频| 国产在线视频在线观看| av在线播放成人| 91久久精品国产91久久| 日韩国产高清影视| 99久久er热在这里只有精品15| 无国产精品白浆免费视| 欧美xxx.com| 狠狠做六月爱婷婷综合aⅴ| 国产成人久久精品77777最新版本| 中文有码在线| 国产黄色91视频| 一区二区三区高清在线视频| 中文字幕乱码日本亚洲一区二区| 中文字幕成人动漫| 一区二区三区国产在线观看| 精品久久久久久中文字幕大豆网| 99国产精品久久久久久久久久| 欧美人体做爰大胆视频| 亚洲精品日韩丝袜精品| 欧美性色视频在线| 国产精品久久久久久人| 亚洲精品永久免费视频| 国产性天天综合网| 黄色短视频在线观看| 国产精品免费看片| 国产美女av一区二区三区| 久久久久久一区二区| 中出嫩模无套| 欧美成人精品一区二区男人小说| 成人18精品视频| 精品爽片免费看久久| 一个人免费视频www在线观看| 欧美日韩国产在线| 2020中文字幕在线播放| 亚洲欧洲中文字幕| 91肉色超薄丝袜脚交一区二区| 91免费版在线观看| 在线亚洲日本| 国产日韩欧美一区二区东京热| 青青青青国产视频| 里番全彩acg☆无翼乌全彩3d| 久久精品91久久香蕉加勒比| 欧美激情一区二区三级高清视频| 日韩电影在线观看完整版| 日本成人中文字幕在线视频| 久久久久久久久久久久国产| 成人动态视频| 国产精品一区二区三区四| 国产午夜福利在线播放| 久久一二三四| 极品粉嫩国产18尤物| 久久爱www.| 成人动漫视频在线观看完整版| 亚洲精品美女在线观看| 免费在线观看一区二区| 国产成a人无v码亚洲福利| 国产乱子伦视频一区二区三区| 国产精品系列在线观看| 欧美日韩亚洲激情| 在线观看的网站你懂的| 男女男精品网站| 丝袜脚交免费网站xx| 欧美大黑帍在线播放| 色先锋久久av资源部| 色视频www在线播放| 免费av一区二区三区| 性感美女一区二区三区| www.国产高清| 国产一级片网站| 欧美日韩在线大尺度| 在线国产一区二区三区| 成人三级毛片| 亚洲男女一区二区三区| 亚洲日本japanese丝袜| 国产精品一区二区不卡视频| 日本三级黄色网址| 欧美中文字幕亚洲一区二区va在线| 国产精品入口免费软件| 国产精品福利av| 国产女主播视频一区二区| 成人性生活视频| 婷婷av一区二区三区| 亚洲激情五月| 五月婷婷亚洲| 香蕉视频在线免费看| 国产av无码专区亚洲av麻豆| 中文字幕www| 国产麻豆剧传媒精品国产av| 国产视频第一区| 亚洲videos| www.噜噜色.com| 国产剧情一区在线| 欧美在线观看网址综合| 精品国产乱码久久久久久久软件| 激情婷婷综合| 黄色成人在线看| 欧美性生交xxxxx久久久| 欧美大片免费高清观看| 久久久精品中文字幕麻豆发布| 久久一区二区三区四区五区| 波波电影院一区二区三区| 亚洲欧美福利一区二区| 免费看日韩毛片| 视频一区视频二区视频三区视频四区国产| 久久精品国产亚洲一区二区三区| www.youjizz.com在线| 日韩av手机在线看| 日本免费黄色小视频| 欧美a级成人淫片免费看| 国产高清一区二区三区四区| 欧美一区二区综合| 91国内精品在线视频| 99精品国产一区二区三区2021| 亚洲一区二区三区日本久久九| 国产精品久久久久久久第一福利| 欧美5-7sexvideos处| 校园春色综合| 欧美日本黄色|