ZopeProductのテストを実行してみよう¶
ZopeのProductには大抵testsディレクトリが付属していて、そのProductの機能が正しく動作するかどうかのテストを行うことが出来る。
Zope2.7, 2.8系では zopectl test
と実行すれば全Productのtestsが実行されたのだけど、Zope2.9.0ではtest.pyが無いため動作しない。また、そもそもWindows環境ではzopectlが使えない。ということで、こういう環境でテストを実行するためには環境変数等、それなりの環境を用意してテストを実行してあげないといけない。とりあえず一つのプロダクトのテストを実行するには、以下のようにする(例はWindowsの場合)。
runzope の中の環境変数設定をコピーしてDOS窓で実行する
目的のプロダクトのtestsディレクトリに移動する
%PYTHON% runalltests.py
を実行する
これでうまくいけば以下のような結果が表示される。
中略の部分にたくさんのDeprecationWarningが出るけど、気にしない方向で。
ということで、 最小Procutにもテストコード を書いてみた。framework.py, runalltests.py は Zope-2.9.0/lib/python/Testing/ZopeTestCase/ からのもらいもの。実行には PloneTestCase とPlone-2.1.2が必要。