拡張機能用の一連のPHPUnitテストがあり、拡張機能のHudsonビルドプロセスの一部として実行したいと考えています。
そのため、実行時にロードする拡張ライブラリを指定してPHPUnitを実行したいのですが、これを行う方法がわかりません。
私のディレクトリ構造は次のとおりです。
/myextension.c
/otherextensionfiles.*
/modules/myextension.so
/tests/unittests.php
次のように、構成XMLファイルを使用してPHPUnitを実行してみました。
<phpunit>
<php>
<ini name="extension_dir" value="../modules/"/>
<ini name="extension" value="myextension.so"/>
</php>
</phpunit>
そして、次のように実行します(tests
ディレクトリから):
phpunit --configuration config.xml unittests.php
しかし、それから私は取得Fatal error: Call to undefined function myfunction()
するので、ライブラリをロードしていません。
私も試しました:
phpunit -d extension_dir=../modules/ -d extension=myextension.so unittests.php
またdl('myextension.so')
、テストのセットアップにも、喜びはありません。
関連する場合、これはPHP5.2およびPHPUnit3.4.11を使用しています。
この質問をPHPUnitユーザーのメーリングリストにクロスポストしました。