1

何かがリファクタリングされたために機能しないコードをチェックインする人々に、私たちは大きな問題を抱えています。確かに、これは開発者がこの種の間違いを簡単に見つけるための優れたツールを実際に持っていないためです。

Python で ImportErrors を見つけるのに役立つツールはありますか? もちろん、ここでの正解は「そのためには単体テストを使用する必要があります」です。しかし、私は (少なくとも Michael Feathers の定義によると) レガシー コードの世界にいるので、単体テストは私たちが重点的に取り組んでいるものです。

それまでの間、各ディレクトリをウォークスルーし、その中の各ファイルをインポートして、ImportErrors を持つスクリプトを見つけるための何らかのツールがあればいいでしょう (たとえば、ファイルまたはクラスの名前が最近変更された場合など)。これを自分で書くのはそれほど難しくないと思いますが、これを行うために既に書かれているプログラムはありますか?

4

2 に答える 2

3

Pychecker はあなたのためです。モジュールをインポートし、これらのエラーを見つけます。

http://pychecker.sourceforge.net/

ああ、「pylint <modulename>」はモジュールをインポートしますが、pychecker が少なくとも *.py をサポートしている場合、必要なモジュールごとに 1 回呼び出す必要があると思います。(Pylint も *.py をサポートしますが、その状況ではモジュールをインポートしません)。

于 2009-06-27T16:57:43.150 に答える
1

このようなもの?

import os
for x in os.listdir("some/path"):
    execfile( x )

それで十分ですか、それとももっと必要ですか?

欠けているモジュールは、if __name__ == "__main__":明らかに離陸して作業を開始することに注意してください。

于 2009-06-27T15:26:22.487 に答える