激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

腳本之家,腳本語言編程技術(shù)及教程分享平臺!
分類導(dǎo)航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務(wù)器之家 - 腳本之家 - Python - 詳解Python之unittest單元測試代碼

詳解Python之unittest單元測試代碼

2021-01-08 00:40JeremyWYL Python

本篇文件主要介紹了詳解Python之unittest測試代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

前言

編寫函數(shù)或者類時,還可以為其編寫測試。通過測試,可確定代碼面對各種輸入都能夠按要求的那樣工作。

本次我將介紹如何使用Python模塊unittest中的工具來測試代碼。

測試函數(shù)

首先我們先編寫一個簡單的函數(shù),它接受姓、名、和中間名三個參數(shù),并返回完整的姓名:

names.py

?
1
2
3
4
5
6
7
8
def get_fullname(firstname,lastname,middel=''):
  '''創(chuàng)建全名'''
  if middel:
    full_name = firstname + ' ' + middel + ' ' + lastname
    return full_name.title()
  else:
    full_name = firstname + ' ' + lastname
    return full_name.title()

然后再當(dāng)前目錄下編寫調(diào)用函數(shù)程序

get_name.py

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from names import get_fullname
 
message = "Please input 'q' to quit."
print(message)
 
while True:
  first = input("Please input your firstname: ")
  if first == 'q':
    break
  last = input("Please input your lastname: ")
  if last == 'q':
    break
  middels = input("Please input your middel name or None: ")
  if last == 'q':
    break
  formant_name = get_fullname(first,last,middels)
  print("\tYour are fullname is: " + formant_name.title())

調(diào)用結(jié)果:

Please input 'q' to quit.
Please input your firstname: xiao
Please input your lastname: peng
Please input your middel or None:
    Your are fullname is: Xiao Peng
Please input your firstname: xiao
Please input your lastname: peng
Please input your middel or None: you
    Your are fullname is: Xiao You Peng
Please input your firstname: q

進程已結(jié)束,退出代碼0

創(chuàng)建測試程序

創(chuàng)建測試用例的語法需要一段時間才能習(xí)慣,但測試用例創(chuàng)建后,再針對函數(shù)的單元測試就很簡單了。先導(dǎo)入模塊unittest以及要測試的函數(shù),再創(chuàng)建一個繼承函數(shù)unittest.TestCase的類,

并編寫一系列方法對函數(shù)行為的不同方便進行測試。

下面介紹測試上面names.py函數(shù)是否能夠正確的獲取姓名:

Test_get_name.py

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import unittest
from names import get_fullname
 
class NamesTestCase(unittest.TestCase):
  '''定義測試類'''
  def test_get_name2(self):
    '''測試2個字的名字'''
    formatied_name2 = get_fullname('xiao','pengyou')
    self.assertEqual(formatied_name2,'Xiao Pengyou')
  def test_get_name3(self):
    '''測試3個字的名字'''
    formatied_name3 = get_fullname('xiao','peng',middel='you')
    self.assertEqual(formatied_name3,'Xiao Peng You')
if __name__ == '__init__':
  unittest.main()

測試結(jié)果:

Ran 2 tests in 0.034s

OK

兩個測試單元測試通過測試!

在當(dāng)前的大目錄下會生成一個測試報告,可以通過瀏覽器進行打開查看。

詳解Python之unittest單元測試代碼

由圖可知,兩個測試通過,并顯示測試的時間!!!

unittest.TestCase的各種斷言方法

unittest各種斷言方法

 

方      法 用      途
assertEqual(a,b) 核實a == b
assertNotEqual(a,b) 核實a != b
assertTrue(x) 核實x為True
assertFalse(x) 核實x為False
assertIn(item,list) 核實item在list中
assertNotIn(item,list) 核實item不在list中

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/JeremyWYL/p/8340316.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产乱淫av一区二区三区 | 免费黄色片网站 | 毛片在线视频在线播放 | 午夜视频在线看 | 久夜tv| 四季久久免费一区二区三区四区 | 天天干导航 | 久久精品在这里 | 久久久av亚洲男天堂 | 亚州综合一区 | 日本欧美一区二区三区在线播 | 国产大片中文字幕在线观看 | 免费在线观看国产 | 日本在线视频二区 | 久草视频国产在线 | 毛片在线看免费 | 美女福利视频国产 | 天天碰夜夜操 | 久久日本 | 黄色免费小视频网站 | 久久综合综合久久 | asiass极品裸体女pics | 请播放一级毛片 | 日韩精品久 | 色女人在线 | 日本看片一区二区三区高清 | 欧美精品免费一区二区三区 | 福利在线免费 | 久久精品re | 999久久久国产999久久久 | 国产寡妇xxxxxxxx性开放 | 经典三级av在线 | 国内精品国产三级国产a久久 | 成人免费网站在线观看视频 | 久久成人免费网 | 欧美一级黄色免费 | 欧美a久久 | 日韩在线视频在线观看 | 国产亚洲精品久久久久久久久久 | 毛片福利 | 青青草成人免费视频在线 |