Nose-1-入门

简介: Nose-1-入门

什么是 nose


nose 是一个超轻量化的,超简单的一个开箱即用的单元测试框架。如果你讨厌使用类,那么建议你使用 nose 或者 pytest,当然 nosepytest 也是支持类的,只是他们都可以支持以 test 打头的文件和方法以及类。因为大名鼎鼎的 unittest 是基于类的测试框架。


nose 的特点


  1. 自动发现测试用例(包含[Tt]est 文件以及文件夹中包含 test 的函数)
  2. test 开头的文件
  3. test 开头的函数或方法
  4. Test 开头的类


怎么安装 nose


pip install nose
复制代码


例子


单元测试代码:


def test_add():    
    assert 1+1 == 2
复制代码


执行测试:


PS C:> nosetests .
.----------------------------------------------------------------------
Ran 1 test in 0.005sOK
复制代码


可以看到:nosetests 后面跟上一个测试项目路径即可执行测试,测试结果为执行了一条测试,耗时 0.005 秒。项目的最终测试结果为 OK,即通过。


展示用例名等信息


使用参数:-v(展示详细程度为 2 的信息)

执行测试:


PS C:> nosetests -v .
test_01.test_add ... ok----------------------------------------------------------------------
Ran 1 test in 0.003sOK
复制代码


使用参数:--verbosity(设置详细程度的参数)

执行测试(详细级别为 2):


PS C:> nosetests --verbosity=2 .
test_01.test_add ... ok----------------------------------------------------------------------
Ran 1 test in 0.002sOK
复制代码


执行测试(详细级别为 3):


PS C:> nosetests --verbosity=3 .
nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$']
test_01.test_add ... ok
----------------------------------------------------------------------
Ran 1 test in 0.004sOK
复制代码


可以看到:-v 的测试结果详细程度和--verbosity=2 时的结果详细程度一致。--verbosity=3 时的测试结果包含了一些 INFO 的日志,--verbosity=4 时的测试结果会包含更多的 DEBUG 信息(因为内容太多,所以文中不再展示)。


常用的命令


命令&参数 解释
nosetests –h 查看所有 nose 相关命令
nosetests –s 执行并捕获输出
nosetests –with-xunit 输出 xml 结果报告
nosetests -v 查看 nose 的运行信息和调试信息
nosetests -w 目录:指定一个目录运行测试



更多关于 nose 的用法可以参考官方文档:


https://nose.readthedocs.io/en/latest/usage.html#extended-usage
相关文章
|
6月前
|
IDE 测试技术 开发工具
软件测试|好用的pycharm插件推荐(一)——Indent Rainbow
软件测试|好用的pycharm插件推荐(一)——Indent Rainbow
65 0
|
6月前
|
IDE 测试技术 开发工具
软件测试|好用的pycharm插件推荐(三)——Rainbow Brackets
软件测试|好用的pycharm插件推荐(三)——Rainbow Brackets
63 0
|
12月前
|
机器学习/深度学习 数据采集 分布式计算
Lesson 6.1 Scikit-Learn 快速入门
Lesson 6.1 Scikit-Learn 快速入门
|
Python
Matplotlib从入门到精通:Artist
Matplotlib从入门到精通:Artist
135 0
Matplotlib从入门到精通:Artist
[oeasy]python0072_自定义小动物变色_cowsay_color_boxes_asciiart
[oeasy]python0072_自定义小动物变色_cowsay_color_boxes_asciiart
107 0
[oeasy]python0072_自定义小动物变色_cowsay_color_boxes_asciiart
|
Python
Python经典编程习题100例:第64例:利用ellipse 和 rectangle 画图
Python经典编程习题100例:第64例:利用ellipse 和 rectangle 画图
54 0
|
XML 数据格式 Python
Python networkx tutorial教程
Python networkx tutorial教程
|
开发者 Python
black:你的Python代码有点丑
black:你的Python代码有点丑
black:你的Python代码有点丑
|
IDE 开发工具 Python
Easy Games With Python and Pygame(一)- Pygame Quickstart
Easy Games With Python and Pygame(一)- Pygame Quickstart
Easy Games With Python and Pygame(一)- Pygame Quickstart
|
存储 数据可视化 Python
NetworkX入门教程
NetworkX是复杂网络研究领域中的常用Python包。本文旨在通过介绍NetworkX中常用的方法等内容,为新手提供一个NetworkX的入门教程。
NetworkX入门教程