python自动化框架nose
python除了unittest,还有一款更快捷的nose,nose可以说是对unittest的一种简化吧
但是他不需要unittest那种必须有固有的格式,他只需要文件,类名,方法名等含有test就可以
unittest是需要手动来写discover函数来遍历用例的
- Name my test modules/files starting with ‘test_’.
- Name my test functions starting with ‘test_’.
- Name my test classes starting with ‘Test’.
- Name my test methods starting with ‘test_’.
- Make sure all packages with test code have an ‘init.py’ file.
官网地址http://pythontesting.net/framework/nose/nose-introduction/
里面介绍的很详细,一下总结几个常用的点:
安装:
easy_install nose
运行:
nosetests [文件]
nosetests [目录]
如果不加目录,默认执行当前目录下的所有符合nose条件的用例,
如果加目录,则运行指定目录里面符合nose条件的用例
常用参数
-v 把运行中的具体过程输出nosetests -v
simple_example.test_um_nose.test_numbers_3_4 ... ok
simple_example.test_um_nose.test_strings_a_3 ... ok ----------------------------------------------------------------------
Ran 2 tests in 0.000s OK
-s 把测试用例中的print输出打印到控制台,这个调试的时候还是挺方便的
C:\Users\Administrator>nosetests -s "d:\\00" thisisprint1
.thisisprint2 ------------------------------------------------
Ran 2 tests in 0.044s OK
nose的执行规则:
和unittest一样,会优先执行setUp,最后执行tearDown,和函数的位置没关系
def tearDown():
print "teardown"
def test1():
print 1
#assert(1==2)
def test2():
print 2
def setUp():
print "this setup" C:\Users\Administrator>nosetests -s -v "d:\\00"
this setup
testnose.test1 ... 1
ok
testnose.test2 ... 2
ok
teardown
=
------------------------------------------------
Ran 2tests in 0.010s OK
nose里面常用的工具有很多函数,比如类似unittest的assertEqual
使用方法
from nose import tools
然后看下里面有这么多的方法
assert_almost_equal
assert_almost_equals
assert_dict_contains_subset
assert_dict_equal
assert_equal
assert_equals
assert_false
assert_greater
assert_greater_equal
assert_in
assert_is
assert_is_instance
assert_is_none
assert_is_not
assert_is_not_none
assert_items_equal
assert_less
assert_less_equal
assert_list_equal
assert_multi_line_equal
assert_not_almost_equal
assert_not_almost_equals
assert_not_equal
assert_not_equals
assert_not_in
assert_not_is_instance
assert_not_regexp_matches
assert_raises
assert_raises_regexp
assert_regexp_matches
assert_sequence_equal
assert_set_equal
assert_true
assert_tuple_equal
eq_
istest
make_decorator
nontrivial
nontrivial_all
nottest
ok_
raises
set_trace
timed
trivial
trivial_all
with_setup
python自动化框架nose的更多相关文章
- python 测试框架nose
python测试框架nose nose不是python自带模块,这里我才用pip的方式安装 pip install nose 这样就完成了安装,然后再确认下是否安装成功了,直接打开cmd输入noset ...
- python自动化框架(unnitest+selenium+htmlreport)
上一篇零零散散的写了一些python unnitest的一些知识,这里讲讲我在实际中使用到的自动化测试框架,算是上篇记录的补充!其实我觉得:什么框架都无所谓,关键是当如果用你的框架发现了bug,能尽量 ...
- python测试框架nose
据说nose是一个比较牛逼的单元测试框架,今天打算来学习学习. nose不是python自带模块,这里我才用pip的方式安装 pip install nose 这样就完成了安装,然后再确认下是否安装成 ...
- selenium+python自动化框架
流程: 环境准备 eclipse :需安装pydev.testng插件 python :安装python完成后,需 pip下安装selenium:命令: pip install selenium 我现 ...
- python自动化框架(一)
一.jsonpath难点分析 dic = { "error_code": 0, "stu_info": [ { "id": 2057, &q ...
- appium+python自动化项目实战(一):引入nose和allure框架
本文将介绍一套比较完整的appium自动化框架,以python为编写脚本语言,是因为python有强大的库,同时易学易懂. 最终的测试框架代码,将在jenkins项目中一键构建,执行自动化测试用例,并 ...
- [转]Python测试框架对比----unittest, pytest, nose, robot framework对比
测试框架 什么是框架? 框架(Framework)是整个或部分系统的可重用设计,框架是用来解决代码的组织及运行控制问题的. 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求 ...
- Python测试框架对比----unittest, pytest, nose, robot framework对比
什么是框架? 框架(Framework)是整个或部分系统的可重用设计, 框架是用来解决代码的组织及运行控制问题的. 在我们编写自动化脚本的时候,经常需要读取配置文件,读取数据文件,发送请求,记录日志, ...
- python自动化测试(3)- 自动化框架及工具
python自动化测试(3) 自动化框架及工具 1 概述 手续的关于测试的方法论,都是建立在之前的文章里面提到的观点: 功能测试不建议做自动化 接口测试性价比最高 接口测试可以做自动化 后面所谈到 ...
随机推荐
- monads-are-elephants(转)
介绍monads有点像互联网时代的家庭手工业.我想 “为什么要反对传统?”,但这篇文章将以Scala对待monads的方式来描述. 有个古老的寓言,讲述了几个瞎子第一次摸到大象.一个抱着大象的腿说:“ ...
- .net 附加W3wp进程
步骤:1.鼠标右键点击application项目中的web,找到属性 2.修改web服务器地址(如果使用localhost报错,则http://电脑IP/): 3.在本地iis中找到你部署的网站,点击 ...
- .Net消息队列的使用
版权声明:作者:真爱无限 出处:http://blog.csdn.net/pukuimin1226 本文为博主原创文章版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出 ...
- 处理GitHub不允许上传大于100M文件问题
第一步输入命令 cd /Users/Dora/Desktop/XXX(cd后面的这个路径要换成你自己项目的路径) 第二步输入命令 git rm --cached/Users/Dora/Desktop/ ...
- c语言基础表达式, 关系运算符, 逻辑运算符, 位运算符, 数据的取值范围, 分支结构(if...else, switch...case)
1.表达式: 表达式的判断是有无结果(值), 最简单的表达式是一个常量或变量, 如:12, a, 3 + 1, a + b, a + 5 都是表达式 2.BOOL(布尔)数据类型: c语言中除了基本数 ...
- 在VMware中安装ubuntu出现菜单栏无法显示的情况
在VMware中安装ubuntu出现菜单栏无法显示的情况 其实这个问题的原因时由于VMware中enable了3D图形加速界面,只需要shutdown当前运行的虚拟机,然后在虚拟机,设置,显示器,3D ...
- 修改oracle占用的8080端口
Oracle10g在安装完成后,默认占用8080端口,而这个端口也是Tomcat 的默认端口.如果想改Oracle的默认8080端口的话可以这么做: 步骤一:运行cmd,输入sqlplus / as ...
- js生成[n,m]的随机数 以及实际运用
Math.ceil(); //向上取整. Math.floor(); //向下取整. Math.round(); //四舍五入. Math.random(); //0.0 ~ 1.0 之间的一 ...
- sql修改字段名称
EXEC sp_rename 'RPersonalityColor.[PTF_UPDATE_DT]','PTC_UPDATE_DT','COLUMN'; RPersonalityColor.[PTF_ ...
- windows8.1下常用编辑器安装配置(emacs/vim/sublime text3)
一.下载:在emacs:http://mirrors.ustc.edu.cn/gnu/emacs/windows/里下载emacs-24.3-bin-i386.zip.解压到自定目录,双击bin文件夹 ...