如何导入pytest monkeypatch插件?

时间:2016-05-12 17:42:40

标签: python pytest monkeypatching

我想使用pytest monkeypatch插件,但我无法弄清楚如何导入它。我试过了:

  • import monkeypath
  • import pytest.monkeypatch
  • from pytest import monkeypatch

2 个答案:

答案 0 :(得分:8)

它不是插件,而是内置的pytest fixture

简而言之,这意味着您只需使用monkeypatch参数编写测试,测试将获得monkeypatch对象作为该参数。

您链接的页面有一个简单示例:

def test_some_interaction(monkeypatch):
    monkeypatch.setattr("os.getcwd", lambda: "/")

答案 1 :(得分:1)

只是为了确认Eric Fulmer的评论,如果您出于某种原因确实想从Python内部使用MonkeyPatch,它就这样对我有效(基于The Compiler的回答)< / p>

from _pytest.monkeypatch import MonkeyPatch

def test_some_interaction(monkeypatch):
    monkeypatch.setattr("os.getcwd", lambda: "/")

test_some_interaction(MonkeyPatch())