Python_单元测试工具nose
一、nose的API
nose的API地址:http://pythontesting.net/framework/nose/nose-introduction/
二、安装nose
先用easy_install 安装 nose,easy_install是一个很好的Python工具,可以方便安装很多的python程序。python2.6及之后的版本,默认带easy_install工具。
安装完easy_install后,在相应版本的Scripts目录下(例如C:/Python26/Scripts)会有一个easy_install.exe程序,通过这个就可以安装其他python包了。在命令行下转到Python的Scripts目录下,执行以下的命令进行安装:
C:/Python26/Scripts/easy_install nose
在命令行下,直接运行nosetests(注意要把nosetests.exe所在的目录加入到环境变量Path里面),它就会自动查找当前目录下包含"Test"字符串的目录和文件进行测试。
这样我们可以把所有测试case放在一起,然后让测试自己去运行,我们最后看结果就可以了。我们可以指定具体如何输出结果,也可以指定如何搜索文件和文件夹,还可以把测试结果输入到指定的文件。
三、编写测试
(1)待测试的函数 (name.py)
# -*- coding: utf-8 -*- """
file: name.py
""" def get_name():
return "test"
(2)测试脚本(test_tests.py)
# -*- coding: utf-8 -*- from name import get_name def setUp():
print "start" def tearDown():
print "\nend" def test1():
print "test success!"
assert get_name() == "test" def test2():
print "\ntest fail!"
assert get_name == "kk"
nose在文件中如果找到函数setup, setup_module, setUp 或者setUpModule等,那么会在该模块的所有测试执行之前执行该函数。如果找到函数 teardown,tearDown, teardown_module或者 tearDownModule 等,那么会在该模块所有的测试执行完之后执行该函数。
对于上面的代码,nose实际的执行过程是这样的:
setUp()->test1()->test2()->tearDown()
(3)运行的结果
四、其他
1. nosetests常用的命令行参数
这里只重点介绍几个常用的,其它的参数可以通过nosetests -h进行查看。
a) -w ,指定一个目录运行测试。
b)-s,不捕获输出,会让你的程序里面的一些命令行上的输出显示出来。例如print所输出的内容。
c)-v,查看nose的运行信息和调试信息。例如会给出当前正在运行哪个测试。
2. 此文件的参考:http://blog.csdn.net/linda1000/article/details/8533349
Python_单元测试工具nose的更多相关文章
- 一种数据与逻辑分离的Python单元测试工具
一种数据与逻辑分离的Python单元测试工具 几个概念 TestCase TestCase是一个完整的测试单元,最小的测试执行实体,就是我们常说的测试用例. TestSuite 以某种特性将测试用例组 ...
- Python测试工具——nose
1.nose 特点: a) 自动发现测试用例(包含[Tt]est文件以及文件包中包含test的函数) b) 以test开头的文件 c) 以test开头的 ...
- 主流的单元测试工具之-JAVA新特性-Annotation 写作者:组长 梁伟龙
1:什么是Annotation?Annotation,即“@xxx”(如@Before,@After,@Test(timeout=xxx),@ignore),这个单词一般是翻译成元数据,是JAVA的一 ...
- codeblocks+Mingw 下配置开源c++单元测试工具 google test
google test 是google的c++开源单元测试工具,chrome的开发团队就是使用它. Code::Blocks 12.11(MinGW 4.7.1) (Windows版)Google T ...
- PHP单元测试工具PHPUnit初体验
今天接到了个任务,需要对数字进行计算,因为涉及到整数,小数,和科学计数法等很多条件,所以人工测试非常麻烦,于是想到了PHP的单元测试工具PHPUnit,所以写个文档备查. 看了PHPUnit的文档之后 ...
- 单元测试工具之Xunit
在.NET开发中的单元测试工具之——xUnit.Net 原始出处 http://zhoufoxcn.blog.51cto.com/792419/1172320 在上一篇<在.NET开发中的单元 ...
- Java单元测试工具:JUnit4(一)(二)(三)(四)
Java单元测试工具:JUnit4(一)--概述及简单例子 Java单元测试工具:JUnit4(二)--JUnit使用详解 Java单元测试工具:JUnit4(三)--JUnit详解之运行流程及常用注 ...
- 单元测试工具 SmokeTest
.NET 程序集单元测试工具 SmokeTest Smoke Test(冒烟测试),也称Regression Test(回归测试),是对软件的安装和基本功能的测试.一般地我们使用脚本来实现Smoke ...
- Web Service单元测试工具实例介绍之SoapUI
原文 Web Service单元测试工具实例介绍之SoapUI SoapUI是当前比较简单实用的开源Web Service测试工具,提供桌面应用程序和IDE插件程序两种使用方式.能够快速构建项目和组 ...
随机推荐
- mysql数据库补充知识4 数据备份和pymysql模块
一 介绍 #注意: 批量加注释:ctrl+?键 批量去注释:ctrl+shift+?键 二 MySQL数据备份 #1. 物理备份: 直接复制数据库文件,适用于大型数据库环境.但不能恢复到异构系统中如W ...
- 剑指offer 面试6题
面试6题: 题目:从尾到头打印链表 输入一个链表,从尾到头打印链表每个节点的值. 解题代码: # -*- coding:utf-8 -*- # class ListNode: # def __init ...
- IP地址处理模块IPy
IP地址规划是网络设计中非常重要的一个环节,规划的好坏会直接影响路由协议算法的效率,包括网络性能.可扩展性等方面. 在这个过程中,免不了要计算大量的IP地址,包括网段.网络掩码.广播地址.子网数.IP ...
- bolg项目
写代码要尽可能的捕获异常 模板的路径可以直接放到TEMPLATES里面的DIRS当中,TEMPLATE_DIRS可以取消掉 设置static静态文件STATICFILES_DIRS里面,这是一个元组 ...
- Django基础(三)_分页器、COOKIE与SESSION、FORM表单
分页器(paginator) 分页器的使用 >>> from django.core.paginator import Paginator >>> objects ...
- PHP下使用Redis消息队列发布微博
phpRedisAdmin :github地址 图形化管理界面 git clone [url]https://github.com/ErikDubbelboer/phpRedisAdmin.git[ ...
- git 使用教程 --基础一
第一步:下载git https://git-scm.com/ 第二步: 切到需要保存的文件夹下,执行: bogon:VBV mona$ git init #初始化,表示即将对当前文件夹进行版本控制 ...
- 主攻ASP.NET.4.5.1 MVC5.0之重生:系统角色与权限(二)
系统角色篇 数据结构 用户管理 Controller代码 public class SystemUserController : Controller { //public void Log() // ...
- iOS_AFNetWorking框架分析
网络 — 你的程序离开了它就不能生存下去!苹果的Foundation framework中的NSURLConnection又非常难以理解, 不过这里有一个可以使用的替代品:AFNetworking.A ...
- OC_链表实现队列
@interface Node : NSObject @property(nonatomic,strong)NSString *value; @property(nonatomic,strong)No ...