unittest框架测试项目讲解
测试项目整体组织结构如下:关于要测试的源代码,之前的文章中有在这里不做赘述。这里通过discover用来组织测试用例,测试用例的
文件命名要有一定的规则,我用的命名是:Test+测试功能名。这样discover方便用于查找。
创建一个用于保存测试报告文件夹:Report
关于RunAllTest.py的源码如下:
view plain copy
#coding=utf8
from unittest importTestLoader,TestSuite
from Lib.HTMLTestRunner import HTMLTestRunner
import os
import time
import sys
#避免UnicodeDecodeErro的发生
reload(sys)
sys.setdefaultencoding('utf8')
def creatSuite():
'''''创建一个测试集用来保存所有的测试用例'''
alltests=TestSuite()
'''''获取当前的系统的根目录'''
current_dir=os.getcwd()
'''''发现当前项目中的所有Test开头的py文件'''
Path=["TestSuit_01","TestSuit_02"]
for path in Path:
TSdir =current_dir+"\\"+path
discover=TestLoader().discover(TSdir,pattern="Test*.py",top_level_dir=None)
print discover
for test_suit in discover:
for test_case in test_suit:
alltests.addTest(test_case)
return alltests
def runAll():
alltest=creatSuite()
'''''用来记录当前用例运行时间'''
now = time.strftime("%Y-%m-%d%H_%M_%S")
'''''每次运行保存报告的名字 '''
filename ='.\\Report\\'+now+'result.html'
fp = file(filename, "wb+")
'''''调用HTMLTestRunner生成运行驱动实例'''
runner=HTMLTestRunner(stream=fp,title="TestReport",description="The state of the run")
#runner=TextTestRunner()
runner.run(alltest)
fp.close()
if __name__=="__main__":
runAll()
这个文件做下解释,下图标准的红色部分,对于强迫症是中折磨,我尝试好多方法,都没有去掉那红色线,
但系统不报错,如果有解决办法,希望告知下,谢谢!
谢谢分享
页:
[1]