Python學習筆記 測試

2021-09-29 16:02:05 字數 2486 閱讀 4339

@測試分類

#單元測試

#全覆蓋測試

@單元測試(測試方法)

#引入unittest

#例:name_function.py

def get_formatted_name(first, middle,  last):

full_name = first + " " + middle + " " + last

return full_name.title()

#test_name_function.py

import unittest

from name_function import get_formatted_name

class nametestcase(unittest.testcase):

"""單元測試demo"""

def test_get_formatted_name(self):

formatted_name = get_formatted_name('janis', 'joplin')

self.assertequal(formatted_name, 'janis joplin')

if __name__ == '__main__':

unittest.main()

@unittest.testcase類

#assertequal(a, b)            #核實a==b

#assertnotequal(a, b)      #核實a!=b

#asserttrue(x)                  #核實x為true

#assertfalse(x)                 #核實x為flase

#assertin(item, list)          #核實item在list中

#assertnotin(item, list)    #核實item不在list中  

@單元測試(測試類)

#例:#survey.py

class anonymoussurvey():

"""收集匿名調查問卷的答案"""

def __init__(self, question):

"""儲存乙個問題,並為儲存答案做準備"""

self.question = question

self.responses =

def show_question(self):

"""顯示調查問卷"""

print(self.question)

def store_response(self, new_response):

"""儲存單份調查答卷"""

def show_results(self):

"""顯示收集到的所有答卷"""

print("survey results:")

for response in self.responses:

print('- ' + response)

#language_survey.py

from survey import anonymoussurvey

question = "what language did you first learn to speak?"

my_survey = anonymoussurvey(question)

my_survey.show_question()

print("enter 'q' at any time to quit.\n")

while true:

response = input("language:")

if response == 'q':

break

my_survey.store_response(response)

print("\nthank you to everyone who participated in the survey!")

my_survey.show_results()

#test_survey.py

import unittest

from survey import anonymoussurvey

class testanonymoussurvey(unittest.testcase):

"""針對anonymoussurvey類的測試"""

def test_store_single_response(self):

"""測試單個答案會被妥善地儲存"""

question = "what language did you first learn to speak?"

my_survey = anonymoussurvey(question)

my_survey.store_response('english')

self.assertin('english', my_survey.responses)

if __name__ == '__main__':

unittest.main()

python基礎學習筆記 測試

部分 來自 python程式設計從入門到實踐 一書 執行測試用例時,每完成乙個單元測試,python都列印乙個字元 測試通過列印乙個句點,錯誤列印 e,測試導致斷言失敗列印乙個 f 針對單個函式的測試 name function.py中 defget formatted name first,las...

python測試開發學習筆記

練習題1 請大家找出s aabbccdd xffff 中,字母出現次數最多的字母 遍歷所有的字元,把每乙個字元出現的次數,用count函式做乙個統計,宣告乙個儲存最大值的字典物件,遍歷的時候動態判斷當前字元出現的字元數字是否比字典中的最大值更大 如果等於則也存進去 如果小於則忽略,如果大於則把字典中...

Python學習筆記 錯誤 除錯和測試

根據廖雪峰python教程整理 在程式執行過程中,總會遇到各種各樣的錯誤。有的錯誤是程式編寫有問題造成的,比如本來應該輸出整數結果輸出了字串,這種錯誤我們通常稱之為bug bug 是必須修復的。有的錯誤是使用者輸入造成的,比如讓使用者輸入email 位址,結果得到乙個空字串,這種錯誤可以通過檢查使用...