鼻子测试 – 工具

鼻子测试 – 工具


鼻子.tools 模块提供了许多您可能会发现有用的测试辅助工具,包括用于限制测试执行时间和测试异常的装饰器,以及在 unittest.TestCase 中找到的所有相同的 assertX 方法。

  • 鼻子.tools.ok_(expr, msg = None) – 断言的简写。

  • 鼻子.tools.eq_(a, b, msg = None) – ‘assert a == b, “%r != %r” % (a, b) 的简写

  • none.tools.make_decorator(func) – 包装一个测试装饰器,以便正确复制装饰函数的元数据,包括鼻子的附加内容(即设置和拆卸)。

  • 鼻子.tools.raises(*exceptions) – 测试必须引发预期的异常之一才能通过。

  • 鼻子.tools.timed(limit) – 测试必须在指定的时间内完成才能通过

  • nose.tools.istest(func) – 将函数或方法标记为测试的装饰器

  • nose.tools.nottest(func) – 将函数或方法标记为非测试的装饰器

参数化测试

Python 的测试框架 unittest 没有运行参数化测试用例的简单方法。换句话说,您不能轻松地从外部将参数传递到unittest.TestCase 中

但是,pytest 模块端口以几种集成良好的方式测试参数化 –

  • pytest.fixture()允许您在夹具函数级别定义参数化。

  • @pytest.mark.parametrize允许在函数或类级别定义参数化。它为特定的测试函数或类提供多个参数/夹具集。

  • pytest_generate_tests可以实现您自己的自定义动态参数化方案或扩展。

第三方模块“nose-parameterized”允许使​​用任何 Python 测试框架进行参数化测试。它可以从这个链接下载 – https://github.com/wolever/nose-parameterized

觉得文章有用?

点个广告表达一下你的爱意吧 !😁