にテストを置くときに私はPythonパッケージの非常に基本的な例を持っていると私はpytestpytestは、私は別のディレクトリ
package
\--
__init__.py
spam.py
spam_test.py
__init__.py
で実行しようとしているテストは、spam.py
定義空のパッケージを見つけることができません単機能func()
とspam_test.py
は次のとおりです。私はpy.test
を実行し、そのすべての作品ルートディレクトリに
import package.spam
def test_func():
assert(package.spam.func() == 5)
、1通のテストを返します。
私には私もこの方法で物事を構造化することができるとを考えた:
package
\--
__init__.py
spam.py
tests
\--
spam_test.py
しかし、私はルートにpy.test
実行したときに、今私が手:私はいろいろなことを試してみた
============================= test session starts ============================= platform win32 -- Python 3.6.0, pytest-3.0.5, py-1.4.32, pluggy-0.4.0 rootdir: C:\Users\MattUser\Documents\m_drive\notebooks\testing, inifile: collected 0 items/1 errors =================================== ERRORS ==================================== _____________________ ERROR collecting tests/spam_test.py _____________________ ImportError while importing test module 'C:\Users\MattUser\Documents\m_drive\not ebooks\testing\tests\spam_test.py'. Hint: make sure your test modules/packages have valid Python names. Traceback: tests\spam_test.py:1: in import package.spam E ModuleNotFoundError: No module named 'package' !!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!! =========================== 1 error in 0.19 seconds ===========================
運がない。私は何を間違えているのですか?
私はいくつかの簡単なテストの作業に問題があったのですが、それらは 'test_foo' 'foo_test'はファイル名と違い... –