国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python單元測試簡單示例

2020-02-15 22:09:45
字體:
來源:轉載
供稿:網友

本文實例講述了Python單元測試方法。分享給大家供大家參考,具體如下:

Eric書中《Python編程從入門到實踐》中的一個例子。

《Python編程從入門到實踐》隨書源碼可至此下載:https://www.jb51.net/books/582019.html。

首先定義了一個測試函數:

namefunction.py

#-*- coding:cp936 -*-def get_formmed_name(first, last): """該函數根據姓和名生成一個完整的姓名""" full_name = first + ' ' + last return full_name.title()

然后編寫了一個測試該函數的模塊:

names.py

#-*- coding:cp936 -*-from name_function import get_formmed_name"""該文件用來測試姓名生成函數"""print "Enter 'q' to quit any time."while True: first = raw_input("/nEnter first name:") if first == 'q':  break last = raw_input("Enter last name:") if last == 'q':  break formatted_name = get_formmed_name(first,last) print "Formmated name:",formatted_name

通過測試,name_function中的函數可以實現其功能。

最后是單元測試和測試用例的編寫。

test_name_function.py

# coding:utf-8import unittestfrom name_function import get_formmed_nameclass NamesTestCase(unittest.TestCase): """測試name_function.py""" def test_first_last_name(self):  """能夠正確處理像Janis Joplin這樣的姓名嗎?"""  formatted_name = get_formmed_name('janis','joplin')  self.assertEqual(formatted_name,'Janis Joplin')

注意這個地方,我在Python 2.7的版本中直接調用書上的主函數unittest.main()時程序無法通過,而改用以下調用方式即可

if __name__ == '__main__': unittest

通過對以上單元測試模塊分析:

1. 導入單元測試類unittest

2. 導入要測試的函數,本例為name_function模塊中的get_formatted_name() 函數

3. 創建一個繼承于unittest.TestCase的類

4. 在類中定義一系列方法對函數的行為進行不同方面的測試,需要注意的是一個測試用例應該只測試一個方面,測試目的和測試內容應很明確。主要是調用assertEqual、assertRaises等斷言方法判斷程序執行結果和預期值是否相符。

更多Python相關內容感興趣的讀者可查看本站專題:《Python入門與進階經典教程》、《Python字符串操作技巧匯總》、《Python列表(list)操作技巧總結》、《Python編碼操作技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》及《Python文件與目錄操作技巧匯總》

希望本文所述對大家Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 济阳县| 玛曲县| 故城县| 龙胜| 青冈县| 广平县| 广东省| 隆德县| 克山县| 安新县| 饶平县| 道孚县| 靖远县| 望城县| 东安县| 沅江市| 博罗县| 霞浦县| 香港| 台北市| 竹溪县| 洪湖市| 喜德县| 静海县| 中江县| 高雄市| 吴旗县| 永安市| 大渡口区| 织金县| 卓尼县| 垫江县| 诸城市| 扎兰屯市| 宁海县| 苗栗县| 忻城县| 苍梧县| 黑水县| 神木县| 曲松县|