PyCharm 2021.1 ヘルプ

テストの実行

通常、PyCharm は、作成した実行 / デバッグ構成を実行することにより、他のアプリケーションと同じ方法でテストを実行およびデバッグします。その際、指定されたテストクラスまたはメソッドをテストランナーに渡します。

多くの場合、コンテキストメニューからテストセッションを開始できます。この目的のために、実行およびデバッグコマンドは、特定のコンテキストメニューで提供されます。例: これらのコマンドは、プロジェクトツールウィンドウのテストクラス、ディレクトリ、またはパッケージで使用できます。エディターで現在作業しているテストクラスまたはメソッドでも使用できます。

永続的な実行 / デバッグ構成がないテストを実行すると、一時的な構成が作成されます。後で再利用したい場合は、実行 / デバッグ構成ダイアログを使用してそのような構成を保存できます。

テストはバックグラウンドで実行されるため、同時に複数のテストを実行できます。

各実行構成は実行ツールウィンドウテスト結果タブ)に独自のタブを持っています。1 つのタブで複数のテストを集約できます。

コンテキストメニューに表示されるコマンドは、状況に応じて異なります。つまり、表示されるテストコマンドは、テストランナーと、このコマンドが呼び出される場所によって異なります。

テストの実行またはデバッグ

テストの実行またはデバッグを開始するには、プロジェクトツールウィンドウまたはエディターのメインツールバーまたはコンテキストメニューを使用できます。

  • メインツールバーを使用してください。

    1. メインツールバーのリストから必要な実行 / デバッグ構成を選択します。

      使用可能な実行構成のリストを表示するには Alt+Shift+F10 を、デバッグ構成の場合は Alt+Shift+F9 を押してください。

    2. リストの右側にある実行 Run またはデバッグ Debug をクリックします。または、メインメニューから実行 | 実行 Shift+F10 または実行 | デバッグ Shift+F9 を選択します。

  • コンテキストメニューを使う:

    • プロジェクトツールウィンドウでテストファイルまたはテストクラスを右クリックするか、エディターで開いて背景を右クリックします。コンテキストメニューから、<クラス名> を実行 /<ファイル名> を実行またはデバッグ... を選択します。

    • テストメソッドの場合は、エディターでクラスを開き、メソッド内の任意の場所を右クリックします。コンテキストメニューには、コマンド実行 / デバッグ <メソッド名> が表示されます。

ディレクトリ内のすべてのテストを実行する

  1. プロジェクトツールウィンドウで、実行するテストが含まれているディレクトリを選択します。

  2. コンテキストメニューから、対応する実行コマンドを選択します。

    ディレクトリに、さまざまなテストフレームワークに属するテストが含まれている場合は、使用する構成を選択します。

    例: <ディレクトリ名> で pytest を実行しますを選択してください。

    Run all tests in a directory

  3. テストランナーの検索結果

    Running all pytest tests from one directory

デフォルトでは、すべてのテストは 1 つずつ実行されます。pytest テストフレームワークのためにこの振る舞いを変えて、あなたのテストを並行して実行することができます。

テストを並行して実行する

pytest テストの実行を最適化するためにテスト多重処理を可能にしてください。

テスト実行用の CPU の数を明示的に指定するには

  1. pytest-xdist(英語) の説明に従って、パッケージのインストール、アンインストール、アップグレードパッケージをインストールします。

  2. プロジェクトテストフレームワークとして pytest を指定してください。詳しくはテストフレームワークを選択してくださいを参照してください。

  3. メインツールバーの実行 / デバッグ構成のリストから実行構成の編集... を選択します。実行 / デバッグ構成ダイアログで、Pytest テストグループを展開し、<ディレクトリ名> の pytest を選択します。

    PyCharm は、ディレクトリ内ですべてのテストを初めて実行したときにこの構成を作成します。まだテストを実行していない場合は、the Add button アイコンをクリックして run/debug 設定パラメーターを指定します。

  4. 実行 / デバッグ構成ダイアログの追加引数フィールドに、テストを実行する CPU の数( -n <number of CPUs> )を指定し、変更を保存します。

    Editing Run/Debug configuration for a group of pytest tests

  5. ディレクトリ内のすべてのテストをもう一度実行し、実行ツールウィンドウで出力を調べます。この例では、結果として同じテストを実行した場合の合計実行時間は 30 秒 13 ミリ秒であるのに対して、12 秒 79 ミリ秒です。テストレポートは、テストの実行に使用された CPU と実行時間に関する情報を提供します。

    Running tests in parallel

あるいは、pytest.ini ファイルでテストを実行するための CPU の数を指定できます。例:

[pytest] addopts = -n3

実行中のテストを停止できる場合は、実行中のすべてのテストがすぐに停止します。実行ツールウィンドウのテストのアイコンは、テストのステータス(合格、失敗、中止)を反映しています。

テストの実行を終了する

  • 実行ツールウィンドウで、停止ボタン the Stop button をクリックします。

  • または、Ctrl+F2 を押します。

関連ページ:

テスト用の実行 / デバッグ構成を作成する | PyCharm

実行 / デバッグ構成を使用して、通常のアプリケーションの実行と同様の方法でテスト(テストケース、テストスイートなど)を実行できます。PyCharm は、テストをターゲットとして指定できる、テスト目的で特別な実行 / デバッグ構成を作成するためのフレームワークを提供します。セクション実行 / デバッグ構成の作成と編集で説明されている通常の手順に加えて、PyCharm には、コンテナー内のすべてのテスト、単一のテストケース、またはテストメソッドの実行 / デバッグ構成を作成するためのショートカット...

プロジェクトツールウィンドウ | PyCharm

プロジェクトツールウィンドウでは、様々な視点からプロジェクトを見て、新しいアイテム(ディレクトリ、ファイル、クラスなど)の作成、エディターでのファイルのオープン、必要なコードフラグメントへのナビゲートなど、様々なタスクを実行することができます。このツールウィンドウのほとんどの機能には、コンテンツペインのコンテキストメニューコマンドとして、関連するショートカットを介してアクセスします。また、ビューには、作成されたスクラッチファイル、データベースコンソール、および拡張スクリプトを管理できるスクラッチ...

実行 / デバッグ構成ダイアログ | PyCharm

このダイアログを使用して、実行 / デバッグ構成を作成、編集、調整、または削除したり、新しく作成されたすべての実行 / デバッグ構成に適用されるデフォルトのテンプレートを構成したりします。プロジェクト構成は構成タイプによってグループ化されています。デフォルトの構成テンプレートは、ダイアログの左側のテンプレートノードにまとめられています。いくつかの実行 / デバッグ構成では、PyCharm はログファイルでの出力の表示をサポートしています。対応する実行 / デバッグ構成ダイアログで詳細な情報を確認...

テストランナータブ | PyCharm

テストランナータブは、テストセッションの開始時に実行ツールウィンドウで開き、同じツールバーボタンを備えています。実行ツールバーは、実行ツールウィンドウのツールバーとほとんど同じですが、テスト固有のボタンを備えています。左側のペインには、現在の実行 / デバッグ構成内のすべてのテストのツリービューが表示されます。ルートノードは、実行するように選択されたテストを表します。ネストされたノードは、テストスイートとテストケースの階層を表します。リーフノードは個々のテストを表します。各テストのステータスはア...

テスト結果を調べる | PyCharm

PyCharm がテストの実行を完了すると、テストランナータブの実行ツールウィンドウに結果が表示されます。右側のコンソールには、現在のテストセッションの出力が表示されます。テストの実行に関する詳細情報と、テストが失敗したか無視された理由を確認できます。テスト結果のリストの上にあるテストランナーツールバーを使用すると、成功したテストと無視されたテストを表示および非表示にしたり、各テストの実行、エクスポート、インポート、およびテスト結果のソートにかかった時間を表示したりできます。IDE は、テストラ...

パッケージのインストール、アンインストール、アップグレード | PyCharm

PyCharm は、特定の Python インタープリターの Python パッケージをインストール、アンインストール、アップグレードする方法を提供します。デフォルトでは、PyCharm は pip を使用してプロジェクトパッケージを管理します。Conda 環境では、conda パッケージマネージャーを使用できます。PyCharm では、Python パッケージツールウィンドウおよび Python インタープリター設定 / 環境設定でパッケージをプレビューおよび管理できます。Python パッケ...