nose とは Python 用のテストフレームワークです。Python には他にも unittest や doctest などがありますが、使いやすいという理由でこれを使ってます。
python_select で Python のバージョンを切り替えながら nose を使っていると、どうやら python_select による変更が反映されてないのではないか?ということに気づきました。
easy_install によってインストールされた nosetests は /usr/local/bin 以下に設置されていたので、中身を見てみます。
#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'nose==0.11.4','console_scripts','nosetests'
__requires__ = 'nose==0.11.4'
import sys
from pkg_resources import load_entry_point
sys.exit(
load_entry_point('nose==0.11.4', 'console_scripts', 'nosetests')()
)
一行目を見る限り、どうやらデフォルトでインストールされている Python を利用しているようです。
そこで、以下のように修正しました。
#!/usr/bin/env python
# EASY-INSTALL-ENTRY-SCRIPT: 'nose==0.11.4','console_scripts','nosetests'
__requires__ = 'nose==0.11.4'
import sys
from pkg_resources import load_entry_point
sys.exit(
load_entry_point('nose==0.11.4', 'console_scripts', 'nosetests')()
)
これで、python_select による変更が反映されるようになりました。
ただし、nose を新しいバージョンにアップデートするたびに修正が必要になるのが面倒ですね。
nose や unittest などのテストフレームワークについては
エキスパートPythonプログラミング
posted with amazlet at 10.09.25
Tarek Ziade
アスキー・メディアワークス
売り上げランキング: 8790
アスキー・メディアワークス
売り上げランキング: 8790
に詳しく載ってます。今読んでますが難しい……。
0 件のコメント:
コメントを投稿