python unittest 3- 框架Nose

当前python的测试框架主要有以下三个:

1)zope.testing

2)py.test

3)Nose

Nose下载:https://github.com/nose-devs/nose

1.Nose安装:

  可以自己去上面的链接下载,也可以用easy_install安装,注意,一定先要转到python的scripts目录下面才能安装。

安完毕后,在C:Python27Scripts下会有一个nosetests.exe文件,通过这个exe程序就可以在命令行下运行测试了。把C:Python27Scripts加入环境变量,这样在其它目录中可以直接引用nosetests.exe。

2. 运行测试Nose

C:Python27Scripts目录下运行nosetests.exe(或者加入Path以后,可以任意地方运行),它就会自动查找当前目录下包含"Test"字符串的目录和文件进行测试。

假设当前目录为:

那么执行nosetests的命令如下:

 

 3. Nose命令行参数

今天继续做这个方面的测试,发现一个现象:在这些测试函数里写的print信息,只有在测试不通过的前提下会被打印出来,通过的测试是不会执行代码里的print代码。

 参数-v修改成-s 后,则不捕获输入输出,就会print出结果。

Nose的主要命令行参数有(-h查看帮助):

  a) -w ,指定一个目录运行测试。目录可以是相对路径或绝对路径。

   例如: nosetest -w c:pythonTestsTest1,只运行目录c:pythonTestsTest1下的测试。可以指定多个目录,例如: nosetest -w c:pythonTestsTest1 -w c:pythonTestsTest2。 

  b)-s,不捕获输出,会让你的程序里面的一些命令行上的输出显示出来。例如print所输出的内容。 

  c)-v,查看nose的运行信息和调试信息。例如会给出当前正在运行哪个测试。 

原文地址:https://www.cnblogs.com/xiami303/p/3499593.html