久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > Python的單元測(cè)試---Pyunit介紹

Python的單元測(cè)試---Pyunit介紹

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-08 02:13:36 1699380816

之前我做過(guò)一點(diǎn)python腳本的編寫(xiě)工作,但是編寫(xiě)過(guò)程中的單元測(cè)試是將待測(cè)代碼放到一個(gè)test.py的測(cè)試腳本中,然后在main中執(zhí)行這個(gè)函數(shù),查看執(zhí)行結(jié)果來(lái)實(shí)現(xiàn)簡(jiǎn)單的單元測(cè)試。這種方法,不方便單元測(cè)試的管理,也不好回歸。有時(shí)測(cè)試時(shí)需要做些預(yù)置條件,使的測(cè)試代碼看起來(lái)雜亂無(wú)章。

現(xiàn)在準(zhǔn)備重新實(shí)現(xiàn)該部分代碼的單元測(cè)試與集成測(cè)試。在網(wǎng)上看到一個(gè)PyUnit的單元測(cè)試模塊,以及一套規(guī)定好的測(cè)試用例編寫(xiě)規(guī)范。現(xiàn)在先將學(xué)習(xí)到的PyUnit記錄在這個(gè)論壇里,便于學(xué)習(xí)總結(jié)。后續(xù)如果用PyUnit可以映照學(xué)習(xí)到的知識(shí)回顧一下,進(jìn)一步理解python的單元測(cè)試。

1)pyunit的安裝

python2.1之后的版本,pyunit作為python的一個(gè)標(biāo)準(zhǔn)模塊,安裝python之后,就可以直接使用。

如下示:

PythonWin2.7.2(default,Jun122011,15:08:59)[MSCv.150032bit(Intel)]onwin32.

PortionsCopyright1994-2008MarkHammond-see'Help/AboutPythonWin'forfurthercopyrightinformation.

>>>importunittest

>>>

現(xiàn)在2B才使用v2之前的python版本,所以就不再寫(xiě)pyunit模塊的另外安裝了。

2)測(cè)試用例:(下面測(cè)試用例與被測(cè)代碼均引用網(wǎng)上原文)

#-*-coding:utf-8-*-

importunittest

classWidget:

def__init__(self,size=(40,40)):

self._size=size

defgetSize(self):

returnself._size

defresize(self,width,height):

ifwidth<0orheight<0:

raiseValueError,"illegalsize"

self._size=(width,height)

defdispose(self):

pass

classWidgetTestCase(unittest.TestCase):

defsetUp(self):

self.widget=Widget()

deftearDown(self):

self.widget=None

deftestSize(self):

self.assertEqual(self.widget.getSize(),(40,40))

defsuite():

suite=unittest.TestSuite()

suite.addTest(WidgetTestCase("testSize"))

returnsuite

if__name__=="__main__":

unittest.main(defaultTest='suite')

執(zhí)行結(jié)果(pythonWin下執(zhí)行結(jié)果):

>>>.

----------------------------------------------------------------------

Ran1testin0.000s

OK

很明顯上面的用例測(cè)試在使用默認(rèn)值時(shí),Widget.getSize()的返回值。并將返回值與預(yù)期做相等比較,如果相同則測(cè)試通過(guò)。

以上內(nèi)容為大家介紹了Python的單元測(cè)試---Pyunit介紹,希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專(zhuān)屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
python 關(guān)鍵字參數(shù)

可變參數(shù)允許你傳入0個(gè)或任意個(gè)參數(shù),這些可變參數(shù)在函數(shù)調(diào)用時(shí)自動(dòng)組裝為一個(gè)tuple。而關(guān)鍵字參數(shù)允許你傳入0個(gè)或任意個(gè)含參數(shù)名的參數(shù),這些...詳情>>

2023-11-08 04:59:13
python 列表元素的刪除

使用del命令刪除列表中的指定位置上的元素。>>>a_list=[3,5,7,9,11]>>>dela_list[1]>>>a_list[3,7,9,11]使用列表的pop()方法刪除并返回指定位置...詳情>>

2023-11-08 03:58:01
python 插入排序

原理插入排序(InsertionSort)是一種簡(jiǎn)單直觀的排序算法。它的工作原理是通過(guò)構(gòu)建有序序列,對(duì)于未排序數(shù)據(jù),在已排序序列中從后向前掃描,找到...詳情>>

2023-11-08 02:56:48
python 的面試題

問(wèn)題1到底什么是Python?你可以在回答中與其他技術(shù)進(jìn)行對(duì)比(也鼓勵(lì)這樣做)。答案下面是一些關(guān)鍵點(diǎn):Python是一種解釋型語(yǔ)言。這就是說(shuō),與C語(yǔ)言...詳情>>

2023-11-08 02:17:12
python的keras訓(xùn)練

Keras模型在輸入數(shù)據(jù)和標(biāo)簽的Numpy矩陣上進(jìn)行訓(xùn)練。為了訓(xùn)練一個(gè)模型,你通常會(huì)使用fit函數(shù)。文檔詳見(jiàn)此處。fit(self,x,y,batch_size=32,epochs...詳情>>

2023-11-08 01:59:12