2016-04-12 10 views
0

enter image description hereImport: Kein Modul Binary mit pytest namens

ich durch http://blog.thedigitalcatonline.com/blog/2015/05/13/python-oop-tdd-example-part1/#.Vw0NojFJJ9n arbeiten bin.

Wenn ich versuche:

$ py.test 
============================= test session starts ============================= 
platform win32 -- Python 3.2.5, pytest-2.9.1, py-1.4.31, pluggy-0.3.1 
rootdir: C:\envs\r3\binary, inifile: 
plugins: capturelog-0.7 
collected 0 items/1 errors 

=================================== ERRORS ==================================== 
____________________ ERROR collecting tests/test_binary.py ____________________ 
tests\test_binary.py:3: in <module> 
    import Binary 
E ImportError: No module named Binary 
================= 1 pytest-warnings, 1 error in 0.20 seconds ================== 

Was mache ich falsch?

Antwort

3

Das aktuelle Verzeichnis zu PYTHONPATH Umgebungsvariable hinzufügen.

Wie Sie unter Windows sind:

$ set PYTHONPATH="." 

Dies gilt py.test helfen, das Modul zu finden und zu importieren.

Überprüfung der py.test Tutorial Ich sehe, dass bei "Schreiben der Klasse" Abschnitt sie genau den gleichen Trick verwenden.

In der Praxis müssen Sie dies nicht tun, da Sie normalerweise mit installiertem Python-Modul testen (normalerweise mit setup.py im Projektstammverzeichnis und im Entwicklungsmodus) und leicht auf den Import zugreifen können, ohne mit PYTHONPATH zu spielen.

+0

Vielen Dank, das hat funktioniert! Kannst du mir einen Hinweis auf die von dir besprochene "setup.py" geben? – user61629

+0

Der Link ist [Im Tutorial folgen Sie] (http://jeffknupp.com/blog/2013/08/16/open-sourcing-a-python-project-the-right-way/). Es gibt viel mehr Seiten dazu (und es ist keine triviale Angelegenheit). Persönlich verwende ich [pbr] (http://docs.openstack.org/developer/pbr/). Angenommen, Sie arbeiten in Git-Repository, es funktioniert sehr gut und vereinfacht die Verpackung zu 3 Zeilen lang 'setup.py' und nett zu' setup.cfg' im Ini-Format zu lesen. –

+0

Vielen Dank! – user61629