discover(start_dir,pattern='test*.py',top_level_dir=none)
找到指定目錄下所有測試模組,並可遞迴查到子目錄下的測試模組,只有匹配到檔名才能被載入。如果啟動的不是頂層目錄,那麼頂層目錄必須要單獨指定。
start_dir :要測試的模組名或測試用例目錄。
pattern='test*.py' :表示用例檔名的匹配原則。星號「*」表示任意多個字元。(test*.py是以test開頭)
top_level_dir=none:測試模組的頂層目錄。如果沒頂層目錄(也就是說測試用例不是放在多級目錄中),預設為 none。
import htmltestrunner
import time
import unittest
listaa = 'd:\\程式檔案\\pycharm\\test1\\test_case'
def creatsuite1():
testunit = unittest.testsuite()
# discover 方法定義
discover = unittest.defaulttestloader.discover(listaa,
pattern='start_*.py',
top_level_dir=none)
# discover 方法篩選出來的用例,迴圈新增到測試套件中
for test_suite in discover:
for test_case in test_suite:
testunit.addtests(test_case)
print(testunit)
return testunit
alltestnames = creatsuite1()
# 取當前時間
now = time.strftime("%y-%m-%d-%h_%m_%s", time.localtime(time.time()))
# 定義個報告存放路徑,支援相對路徑
filename = "d:\\程式檔案\\pycharm\\test1\\report\\" + now + 'result.html'
fp = open(filename, 'wb')
runner = htmltestrunner.htmltestrunner(stream=fp,
description=u'用例執**況:')
# 執行測試用例
runner.run(alltestnames)
fp.close()
pytest之解決用例依賴
pytest中用例之間的順序預設是按檔名ascll碼排序,檔案內的用例預設是按照從上往下順序執行。要改變用例的執行順序,可以安裝第三方外掛程式pytest ordering實現自定義用例順序,由此可以解決用例的依賴問題。命令如下 pip install pytest ordering按數字排序用法如...
業務用例與系統用例的區別
1 業務用例就是要完成的業務,系統用例是系統要做的事情,兩者的域不同。2 業務建模主要描述了該專案涉及的所有業務,需求模型主要是描述為了滿足業務需求系統要做什麼,因此,需求模型與業務模型相比,它描述的只是業務模型的乙個子集。3 比方說我們設計乙個自動提款機系統,它可以滿足使用者的取款 改密 查詢等需...
用例的本質
提到uml中的用例,很多人可能都會覺得很熟悉經常聽說。如果問一句什麼是用例,很多的回答就是用例圖中的乙個橢圓。用例僅僅是用例圖中的乙個橢圓嗎?當然不是,那麼用例的本質是什麼呢?1 用例發展史 為了搞清用例的本質我們首先了解一下用例技術的發展史。uml中的用例概念是由有uml之父ivar jacobs...