返回: Pytest权威教程

运行Nose用例

Pytest基本支持运行Nose框架格式的测试用例。

使用方法

后安装pytest类型:

python setup.py develop  # make sure tests can import our package
pytest # instead of 'nosetests'

你应该能够运行你的nose样式测试并利用pytest的函数。

支持的nose风格

  • 在模块/类/方法级别进行设置和拆卸
  • SkipTest异常和标记
  • 设置/拆卸装饰器
  • yield基于测试及其设置(从pytest 3.0开始被认为已弃用)
  • __test__模块/类/函数的属性
  • nose工具的一般使用方法

不支持的习语/已知问题

  • unittest-style仅在类上被识别,而在普通类上不被识别。在普通类上也支持这些方法,但pytest故意不支持。由于nose和pytest都已经支持它,因此像nose一样复制unittest-API似乎没什么用。但是,如果你认为pytest应该支持普通类的单元测试拼写,请发帖[到这个问题。setUp,tearDown,setUpClass,tearDownClass``unittest.TestCase``nose``setup_class,teardown_class,setup_method,teardown_method[

  • 通过扩展sys.path / import语义,nose导入具有相同导入路径(例如tests.test_mod)但不同文件系统路径(例如tests/test_mode.pyother/tests/test_mode.py)的测试模块。pytest不这样做,但在[#268中有讨论增加一些支持。请注意,[nose2选择避免此sys.path / import hackery。

如果将conftest.py文件放在项目的根目录中(由pytest确定),pytest将对该目录下面的代码运行测试“nose style”,方法是将其添加到你sys.path的安装代码而不是运行。

如果你运行设置项目而不是或任何包管理器等效项,你可能会发现自己想要这样做。建议在此模式下使用像tox这样的虚拟环境进行开发。pythonsetup.pyinstall``pythonsetup.pydevelop

  • 没有正确收集和执行nose式doctests,doctest fixtures也不起作用。

  • 没有nose配置被识别。

  • yield基于方法的方法不能setup正确支持,因为该setup方法总是在同一个类实例中调用。目前没有计划修复此问题,因为yield-test在pytest 3.0中已弃用,pytest.mark.parametrize建议使用。

Pytest权威教程15-运行Nose用例的更多相关文章

  1. Pytest权威教程(官方教程翻译)

    Pytest权威教程01-安装及入门 Pytest权威教程02-Pytest 使用及调用方法 Pytest权威教程03-原有TestSuite的执行方法 Pytest权威教程04-断言的编写和报告 P ...

  2. Pytest权威教程26-示例和自定义技巧

    目录 示例和自定义技巧 返回: Pytest权威教程 示例和自定义技巧 这是一个(不断增长的)示例列表.如果你需要更多示例或有疑问,请联系我们.另请参阅包含许多示例代码段的 综合文档.此外,stack ...

  3. Pytest权威教程05-Pytest fixtures:清晰 模块化 易扩展

    目录 Pytest fixtures:清晰 模块化 易扩展 Fixtures作为函数参数使用 Fixtures: 依赖注入的主要例子 conftest.py: 共享fixture函数 共享测试数据 生 ...

  4. Pytest权威教程21-API参考-01-函数(Functions)

    目录 函数(Functions) pytest.approx pytest.fail pytest.skip pytest.importorskip pytest.xfail pytest.exit ...

  5. Pytest权威教程19-编写钩子(Hooks)方法函数

    目录 编写钩子(Hooks)函数 钩子函数验证和执行 firstresult: 遇到第一个有效(非None)结果返回 hookwrapper:在其他钩子函数周围执行 钩子(Hooks)函数排序/调用示 ...

  6. Pytest权威教程24-Pytest导入机制及系统路径

    目录 Pytest导入机制和sys.path/PYTHONPATH 包中的测试脚本及conftest.py文件 独立测试模块及conftest.py文件 调用通过python -m pytest调用p ...

  7. Pytest权威教程21-API参考-07-配置选项(Configuration Options)

    目录 配置选项(Configuration Options) addopts cache_dir confcutdir console_output_style doctest_encoding do ...

  8. Pytest权威教程21-API参考-05-对象(Objects)

    目录 对象(Objects) CallInfo Class Collector Config ExceptionInfo FixtureDef FSCollector Function Item Ma ...

  9. Pytest权威教程21-API参考-04-钩子(Hooks)

    目录 钩子(Hooks) 引导时的Hook方法 初始化时的Hook方法 测试运行时的Hook方法 收集用例时的Hook方法 生成测试结果时的Hook方法 调试/交互Hook方法 返回: Pytest权 ...

随机推荐

  1. Ubuntu 下安装 OpenSSH Server

    Ubuntu 下安装 OpenSSH Server 是无比轻松的一件事情,需要的命令只有一条: sudo apt-get install openssh-server (查看返回的结果,如果没有出错, ...

  2. 提高QPS

    常用方案 1.异步化+MQ 即非阻塞,化繁为简,拿到你需要处理的资源后尽快回复.适用于事务处理场景,且无需对上游返回数据场景. 2.无锁设计 本质上是要降低锁冲突,基于数据版本的乐观锁 有效的减少了互 ...

  3. python3基础之“小练习(2)”

    (十三)创建一个你最喜欢歌手的列表. # singer=list() # singer=['a','b','c'] # print(singer) (十四)创建一个由元组构成的列表,每个元组包含居住过 ...

  4. 制作IOS ANE的基本流程

    来源:http://www.swfdiy.com/?p=1239 1. 使用xcode新建ios上的static library 工程 2. 从air sdk/include里拷贝flashrunti ...

  5. SQL+C#:一次多语言混合编程的经验总结

    1.用JAVA做,采取轮询策略: 2.用sql语言+C#混合编程,采取触发策略

  6. Mysql 存储过程 + python调用存储过程 (内置函数讲解及定义摘抄)

    定义 存储过程:就是为以后的使用而保存的一条或多条 MySQL语句的集合.可将其视为批文件,虽然它们的作用不仅限于批处理. 个人使用存储过程的原因就是因为 存储过程比使用单独的SQL语句要快 有如下表 ...

  7. 十分钟了解pandas

    十分钟掌握Pandas(上)--来自官网API 一.numpy和pandas numpy是矩阵计算库,pandas是数据分析库,关于百度百科,有对pandas的介绍. pandas 是基于NumPy ...

  8. Linux 反弹shell(二)反弹shell的本质

    Linux 反弹shell(二)反弹shell的本质 from:https://xz.aliyun.com/t/2549 0X00 前言 在上一篇文章 Linux反弹shell(一)文件描述符与重定向 ...

  9. SWPUCTF 2019总结以及部分WP

    本次SWPUCTF开赛了,一共做了5个misc+2个web,RE和Android没时间看= =,pwn完全不会,果然又是和去年一样划水.题目都出的很不错,做题的时候思路其实也容易想到,剩下几个web有 ...

  10. linux系统编程之信号(七)

    今天继续学习信号,主要是学习关于时间和定时器相关的函数的使用,关于这个实际上有很多内容,这里先简要进行说明,等之后再慢慢进行相关深入,也主要是为接下来要做的一个综合linux系统编程的例子做准备,好了 ...