2013-10-05 2 views
6

noseと一緒に試してみると、それをcythonと組み合わせようとすると、私が望むやり方ではうまくいっていません。コードは次のように構成されていますcythonソースファイルとそのテストを整理する(nosetestsを使って)

. 
├── setup.py 
└── src 
    ├── calc 
    │   ├── factorial.py 
    │   ├── __init__.py 
    │   └── tests.py 
    └── cycalc 
     ├── tests.py 
     └── triangle.pyx 

tests.pyのそれぞれは、2つのテストが含まれ、1が成功し、いずれかに障害が発生しました。 setup.py nosetestsを実行した結果、calc/tests.pyのみが実行されます。この後に私がnosetests3 src/cycalcを実行すると、cycalc/tests.pyの2つのテストが実行されます。しかし、すべてのビルドファイルをクリーンアップすると、cycalc/triangle.pyxが共有ライブラリに組み込まれていないために失敗します。

は、その後、私はcycalc/tests.py今までsetup.py nosetestsピック、ファイルsrc/cycalc/__init__.pyを追加しようとしたが、それは、必要なモジュールを見つけることができない、それがsrcに入れました。

setup.py nosetestsは必要なものすべてを見つけるために私のcythonソースとテストをどのように手配しますか?

答えて

1

noseあなたのテストを自動的に実行するには、テストをすべて含むテストフォルダにそれらを追加する必要があります。このようにして、両方のテストが同じパスのすべてで自動的に実行されます。ビルドされたファイルを削除する場合は、python setup.py buildを実行する必要があります。

関連する問題