python自动化测试框架nose

来源:互联网 发布:大数据时代阅读答案 编辑:程序博客网 时间:2024/05/21 07:46

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/

https://nose.readthedocs.org/en/latest/index.html

安装

pip install nose

运行:

nosetests [文件]

nosetests [目录]

如果不加目录,默认执行当前目录下的所有符合nose条件的用例,

如果加目录,则运行指定目录里面符合nose条件的用例

常用参数

-v 把运行中的具体过程输出nosetests -v

-s 把测试用例中的print输出打印到控制台,这个调试的时候还是挺方便的


nose的执行规则:

和unittest一样,会优先执行setUP,最后执行tesrDown,和函数的位置没关系

nose里面常用的工具有很多函数,参见https://nose.readthedocs.org/en/latest/testing_tools.html,比如类似unittest的assertEqual

使用方法

from nose import tools

然后看下里面有这么多的方法

assert_almost_equal
assert_almost_equals
assert_dict_contains_subset
assert_dict_equal
assert_equal
assert_equals

.......


参考:http://mp.weixin.qq.com/s?__biz=MjM5OTI2MTQ3OA==&mid=2652178039&idx=4&sn=0d827a99ec7f225e2a74c0e0069553bb&chksm=bcdf823e8ba80b285c6b225b60ffa3e40af8fdf1217d61b6159c9acc76cb49ae193c016fdb65&mpshare=1&scene=1&srcid=1206zuIROr7J7cdsR9n7DXOU#rd

0 0