小编ddv*_*min的帖子

conftest.py 导入错误:没有名为 Foo 的模块

我有以下目录结构

/home/ubuntu/test/
 - Foo/
   - Foo.py
   - __init__.py
 - Test/
   - conftest.py
   - __init__.py
   - Foo/
     - test_Foo.py
     - __init__.py
Run Code Online (Sandbox Code Playgroud)

Foo.py 包含

class Foo(object):
  def __init__(self):
    pass
Run Code Online (Sandbox Code Playgroud)

conftest.py 包含:

import pytest

import sys
print sys.path

from Foo.Foo import Foo

@pytest.fixture(scope="session")
def foo():
  return Foo()
Run Code Online (Sandbox Code Playgroud)

test_Foo.py 包含:

class TestFoo():
  def test___init__(self,foo):
    assert True
Run Code Online (Sandbox Code Playgroud)

如果我运行 pytest 。在 Test 文件夹中,然后我收到一个错误,它找不到模块 Foo:

Traceback (most recent call last):
  File "/home/ubuntu/pythonVirtualEnv/local/lib/python2.7/site-packages/_pytest/config.py", line 379, in _importconftest
    mod = conftestpath.pyimport()
  File "/home/ubuntu/pythonVirtualEnv/local/lib/python2.7/site-packages/py/_path/local.py", line 662, in pyimport
    __import__(modname)
  File …
Run Code Online (Sandbox Code Playgroud)

python pytest

7
推荐指数
1
解决办法
7849
查看次数

标签 统计

pytest ×1

python ×1