文档章节

unittest框架测试项目讲解

henni_719
 henni_719
发布于 2017/04/22 17:31
字数 380
阅读 9
收藏 0

源码下载地址为:http://pan.baidu.com/s/1jHAQorO

测试项目整体组织结构如下:


关于要测试的源代码,之前的文章中有在这里不做赘述。这里通过discover用来组织测试用例,测试用例的文件命名要有一定的规则,我用的命名是:Test+测试功能名。这样discover方便用于查找。

创建一个用于保存测试报告文件夹:Report

关于RunAllTest.py的源码如下:

#coding=utf8  
from unittest import  TestLoader,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()
这个文件做下解释,下图标准的红色部分,对于强迫症是中折磨,我尝试好多方法,都没有去掉那红色线,但系统不报错,如果有解决办法,希望告知下,谢谢!


© 著作权归作者所有

henni_719
粉丝 2
博文 466
码字总数 343938
作品 0
信阳
QA/测试工程师
私信 提问
Python 各种测试框架简介(二):unittest

unittest 与 doctest 一样也是 Python 发行版自带的包。如果你听说过 PyUnit(OSC 开源项目页面中就有 PyUnit 的页面),那么这俩其实是同一个东西——PyUnit 是 unittest 的曾用名,因为 Py...

lionets
2014/05/25
0
1
python+pytest单元测试框架之介绍

前言 pytest是Python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高。pytest是一个成熟的全功能的Python测试工具,可以帮助你写出更...

keitwotest
2018/07/01
0
0
python接口自动化(二十一)--unittest简介(详解)

简介   前边的随笔主要介绍的requests模块的有关知识个内容,接下来看一下python的单元测试框架unittest。熟悉 或者了解java 的小伙伴应该都清楚常见的单元测试框架 Junit 和 TestNG,这个...

SEOwhywhy
04/23
0
0
[oj.leetcode] 跟leecode的博客旧文说再见

在我目前的博客中,数量最多的就是leecode问题的解答。这些归在leetcode标签之下的文章,其中的绝大部分,基本就是简单一说思路,然后贴代码。 比如这种 它们的共同特征就是结构较简单,讲解...

teaspring
2015/04/12
0
0
(转载)最完整的自动化测试流程:Python编写执行测试用例及定时自动发送最新测试报告邮件

今天笔者就要归纳总结下一整套测试流程,从无到有,实现零突破,包括如何编写测试用例,定时执行测试用例,查找最新生成的测试报告文件,自动发送最新测试报告邮件,一整套完整的测试流程。以...

linux超
2018/07/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Netty源码学习(一)--导入IDEA并编译

1.从github下载最新的Netty稳定版本源码 2.解压源码文件夹 3.导入IDEA 4.跳过checkstyle和xml validate <plugin> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.12.......

湖之风情
6分钟前
0
0
电商网站用户端FE

需求拆分原则 1、单个迭代不宜太大 2、需求可交付,能够形成功能闭环 3、有成本意识,遵循二八原则 4、有预期的价值体现 提炼核心需求 用户端:商品、购物车、下单、支付、订单、用户 后台管...

星闪海洋
17分钟前
0
0
Awesome Blockchain 区块链技术导航

区块链技术导航:收集整理最全面最优质的区块链(BlockChain)技术开发相关资源。 以后找不到文档资料的时候去导航站看看。 先亮个像,我长这样: 导航站内容 区块链开发所涉及的资源: 如 项目...

Tiny熊
21分钟前
0
0
聊聊我的第一篇10万+,同时反驳某些评论

元旦的时候,我立了一个Flag,今年要写一篇10万+,现在目标算是完成一半了。 终于有了一篇10万+ 知乎后台显示我的回答《如何衡量一个人的 JavaScript 水平?》的阅读量已经超过了10万,具体截...

Fundebug
27分钟前
0
0
ping的用法

ping的用法: -t ping指定的主机,直到停止。若要查看统计信息并继续操作-请键入 Control-Break; 若要停止-请键入Control-C。 -a 将地址解析成主机名。 -n count 要发送的回显请求数。 -l s...

WinkJie
29分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部