2011年12月27日火曜日

python:単純バグ発見ツール pychecker(1)

pycheckerは、pythonソースコードを解析して単純なバグを見つけるツールです。
構文チェック、タイプミス、値セット前に変数を参照した、などを手軽に見つけることができます。
ロジックチェックのツールではないので、このチェックを通ったからと言って、プログラムが正常動作することが保障されるわけではありませんが、バグ発見にはかなり強力なツールです。


PythonはGoogleで使われている主要なスクリプト言語の1つで、Googleでもpycheckerを勧めています。
スタイルガイドの第1項は、PyCheckerをかけましょう、というところから始まります。

Google Python スタイルガイドの和訳(Kousei Kitahara氏のサイト)

Google Python Style Guide(google公式サイト:英語)


1.ダウンロード
PyCheckeプロジェクト日本語トップページ

にて、「ダウンロード」をクリックします。
私が使用しているバージョンは「0.8.19」です。


2.インストール
ダウンロードしたファイルを展開して、次のコマンドを実行します。


python setup.py install
うまくいかないときは「python install」などでネット検索してください。
pythonの公開ツールではインストールで上記のコマンドを使用することが多いので、きっと対処方法が見つかると思います。
インストールが成功すると、pycheckrはpythonをインストールしたフォルダ内に配置されます。

例)C:\Python26\Lib\site-packages\pychecker
ここにcheker.pyなどが配置されます。

3.使用準備
checker.pyの第1引数にチェックしたいpythonファイルのパスを渡して実行すれば、チェックできます。

私はchcker.pyを実行するバッチファイルを作成し、そのショートカットのアイコンをデスクトップに置いて、このアイコンにチェックしたいpythonファイルをドラッグ&ドロップして実行しています。
ここではこの方法をご紹介します。


テキストファイルに以下の例のように書いて「pythecker.bat」として保存し、そのショートカットのアイコンをデスクトップに置きます。

@echo off
python.exe C:\Python26\Lib\site-packages\pychecker\checker.py %1
pause


マシンによって「checker.py」のあるフォルダが異なりますので、2行目には本当にあるパスを書きます。
「%1」はコマンドプロンプトでの第1引数のことで、ショートカットのアイコンにドラッグ&ドロップしたファイルのフルパスがセットされます。

さてこれで準備ができました。

次回はいよいよpycheckerを使ってみます。