だから私はboost::python (C++)で作成された共有ライブラリを持っています。内部の C++ 関数については、それらが機能していることを確認する単体テストがあります。ここで、単体テストを使用して、Python インターフェイスを正しく実装したかどうかを確認したいと思います。このために、 python package を使用することを考えましたunittest
。
今、私のフォルダーの設定はおおよそ次のとおりです。
project
|
-- C++ source (library and boost::python stuff)
|
-- build (here the shared library is located)
|
-- Test (here I have the python classes that should test the interface)
test フォルダーには、python インターフェイスの構造を反映したサブフォルダーがいくつかあり、ライブラリのさまざまな側面をテストする小さな python モジュールが多数含まれています。
だから今の質問:
import
共有ライブラリをテストに追加するにはどうすればよいですか?
私がこれまでに試したことは、test_main.py
import sys
sys.path.insert(0,'../build')
ただし、これは test フォルダー内のモジュールには役立ちません。とにかく、このパスをテストコードにハードコーディングするのはハックのようです。また、テストが失敗したことを確認してから再度アンインストールするためだけに、テストされていないライブラリをインストールしたくありません。