1. ホーム
  2. python

[解決済み] py.testテストを実行するようにPyCharmを設定するにはどうすればよいですか?

2022-04-15 07:17:56

質問

Pythonのコードのユニットテストを書き始めたいと思っています。 py.test フレームワークの方が、Pythonにバンドルされている ユニテスト . そこで、私はプロジェクトに "tests" ディレクトリを追加し、そのディレクトリに test_sample.py を追加しました。ここで、"tests" ディレクトリにあるすべてのテストを実行するように PyCharm を設定したいと思います。

PyCharmの疑惑 py.testをサポートします。 をテストランナーで使用することができます。次のことができるようになるはずです。 実行/デバッグの設定を作成する を使用してテストを実行することができ、PyCharmは、そのために py.test 専用の "create configuration" ダイアログボックスがあります。 . しかし、それはこのテーマに関する彼らのドキュメントの完全な範囲であり、私はこのダイアログボックスと言われるものをどこにも見つけることができません。

プロジェクトツールのウィンドウでディレクトリを右クリックすると と思われる しかし、"Create" で始まるメニューは、"Create" だけです。さて、もしかしたらドキュメントが間違っているだけかもしれませんし、"Create Run Configuration"は期待できそうです。残念ながら、そのサブメニューには "Unittests in C:\mypath..." と "Doctests in C:\mypath..." という二つの項目しかなく、どちらも該当しません -- 私は unittest も doctest も使っていないのですが。py.testのメニュー項目はありません。

test_sample.py を開いてエディタウィンドウで右クリックすると、約束された "Create <name>" メニュー項目が表示されます。" Create 'Unittests in test_sa...'.." に続いて、 "Run 'Unittests in test_sa...'" と "Debug 'Unittests in test_sa...'" となります。繰り返しますが、これは全てunittestフレームワークに特有のものです。

もし私が "unittest" と書かれたメニュー項目を試すと、"Name", "Type", "Tests" グループボックスに "Folder" and "Pattern" "Script" "Class" and "Function" 等が入ったオプションのあるダイアログボックスが表示されました。これは、まさに Python Unit Test の設定 で表示されるはずの "Name" や "Test to run" や "Keywords" のようなオプションではありません。 py.testの設定 ダイアログを表示します。ダイアログの中には、どのテストフレームワークを追加するかを切り替えるものはありません。

Windows で PyCharm 1.5.2 を使っていて、Python 3.1.3 と pytest 2.0.3 を使っています。私は正常に実行することができます py.test ということは、pytestが正しくインストールされていないというような単純なことではないのでしょうか?

py.testテストを実行するようにPyCharmを設定するにはどうすればよいですか?

どのように解決するのですか?

にアクセスしてください。 ファイル名 | 設定項目 | ツール | Python統合ツール で、デフォルトのテストランナーをpy.testに変更します。そうすると、unittestの代わりにテストを作成するためのpy.testのオプションが得られます。