python测试用例管理模块_python-selenium并发执行测试用例(方法一 各模块每一条并发执行)...
總執(zhí)行代碼:
# coding=utf-8
import unittest,os,time
import HTMLTestRunner
import threading
import sys
sys.path.append('C:/Users/Dell/Desktop/CARE/program')#使用編輯器,要指定當(dāng)前目錄,不然無(wú)法執(zhí)行第20行代碼
def creatsuite():
casedir = []
list = os.listdir(os.path.dirname(os.getcwd()))#獲取當(dāng)前路徑的上一級(jí)目錄的所有文件夾,這里可以改成絕對(duì)路徑(要搜索的文件路徑)
for xx in list:
if "baidu" in xx:
casedir.append(xx)
suite =[]
for n in casedir:
testunit = unittest.TestSuite()
unittest.defaultTestLoader._top_level_dir = None
#(unittest.defaultTestLoader(): defaultTestLoader()類,通過(guò)該類下面的discover()方法可自動(dòng)更具測(cè)試目錄start_dir匹配查找測(cè)試用例文件(test*.py),
并將查找到的測(cè)試用例組裝到測(cè)試套件,因此可以直接通過(guò)run()方法執(zhí)行discover)
discover = unittest.defaultTestLoader.discover(str(n),pattern='tet_*.py',top_level_dir=None)
for test_suite in discover:
for test_case in test_suite:
testunit.addTests(test_case)
suite.append(testunit)
return suite, casedir
def runcase(suite,casedir):
lastPath = os.path.dirname(os.getcwd())#獲取當(dāng)前路徑的上一級(jí)
resultDir = lastPath+"\\run\\report\\" #報(bào)告存放路徑
now = time.strftime("%Y-%m-%d %H.%M.%S",time.localtime())
filename = resultDir + now +" result.html"
fp = file(filename, 'wb')
proclist=[]
s=0
for i in suite:
runner = HTMLTestRunner.HTMLTestRunner(stream=fp,title=str(casedir[s])+u'測(cè)試報(bào)告',description=u'用例執(zhí)行情況:')
proc = threading.Thread(target=runner.run,args=(i,))
proclist.append(proc)
s=s+1
for proc in proclist:
proc.start()
for proc in proclist:
proc.join()
fp.close()
if __name__ == "__main__":
runtmp=creatsuite()
runcase(runtmp[0],runtmp[1])
描述: 使用這個(gè)總執(zhí)行文件,可以多進(jìn)程 同時(shí)開(kāi)始每個(gè)模塊的測(cè)試用例(每個(gè)模塊同時(shí)一條接著一條執(zhí)行)
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python测试用例管理模块_python-selenium并发执行测试用例(方法一 各模块每一条并发执行)...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: windows自带黑体_window自带
- 下一篇: python list长度_python