web-dev-qa-db-ja.com

pycharmからどのようにnosetestを実行しますか?

Pycharmからどのようにnosetestを実行して、すべてのユニットテストを実行しますか?

Pycharmがpythonのunittestとpy.testをサポートし、pycharm 1.1のnosetestsを適切にサポートすることは知っていますが、回避策があるかどうか疑問に思いました。

30
Nick Sonneveld

Pycharm(2.6)の現在のバージョンでは、テストファイルに「runNosetestsin ...」というコンテキストメニューがあるはずです。これが欠落している場合は、file->settings->Project Settings->python integrated toolsに移動し、デフォルトのテストランナーがNosetestsであることを確認します。もちろん、Nosetestsをインストールする必要があります-インストールしていない場合、pycharmはこれを提供します。

これには制限があります。問題のファイルにunittest.TestCaseから派生したクラスがない場合、これは自動的に表示されません。 nose.toolsまたは単純なアサーションを使用している場合、これは自動的には提供されません。これはおそらくバグです。

37
Danny Staple

グラフィカルなテストランナーがなくても生活できる場合は、「Pythonスクリプト」実行構成を作成し、コマンドラインからテストを実行しながらテストを実行できます。

グラフィカルテストランナーでノーズテストを機能させる唯一の方法は、恐縮ですが、PyCharmディストリビューションからhelpers/pycharm /utrunner.pyをハックすることです。

2
yole

これは簡単に実行できます。

鼻はすでに取り付けられていると思います。

そして、あなたのプロジェクトは次のようになります

   \MyProj_Source
      \MyProj
          init.py
          MyProj.py

Testsディレクトリを作成する必要があります(はい、名前は重要なようです)。そして、そのTestsフォルダーに、noseテストファイルを配置します。したがって、ディレクトリ構造は次のようになります。

   \MyProj_Source
      \MyProj
          init.py
          MyProj.py
       \Tests
          test_stuff.py

この時点であなたは行く必要があります

設定->ツール-> Python統合ツール**および**デフォルトのテストランナーを鼻に設定

これでできるはずです

手動で

  • Noseを使用してtest_stuff.pyを実行します
  • MyProj.pyファイルの自動テストを有効にして、変更後にテストが実行されるようにします

2番目の方法が最良のオプションですが、少し時間がかかる場合があります。

お役に立てば幸いです。

1
Tim Seed