Cucumber.js ●
Cucumber.js(英語) は、ビヘイビア駆動 JavaScript 開発用のテストフレームワークです。 Cucumber.js テストは、人が読める Gherkin 言語で記述され、 feature ファイルに、拡張子 feature として保存されます。 PyCharm は Cucumber.js と連携し、Gherkin で記述されたフィーチャーを認識するため、IDE から直接 Cucumber.js テストを実行できます。
始める前
Cucumber.js バージョン 6.0.0+ を使用するには、PyCharm 2020.3.1 以降を使用していることを確認してください。
お使いのコンピューターに Node.js(英語) がインストールされていることを確認してください。
設定で JavaScript and TypeScript プラグインが有効になっていることを確認します。 Ctrl+Alt+S を押して設定を開き、 を選択します。 インストール済み タブをクリックします。 検索フィールドに JavaScript and TypeScript と入力します。 プラグインの詳細については、 Managing plugins を参照してください。
JetBrains マーケットプレイスからプラグインをインストールする説明に従って、 設定 | プラグイン ページの マーケットプレース タブに Cucumber.js および Gherkin プラグインをインストールしてください。 プラグインは PyCharm Pro でのみ利用できます。
Cucumber.js をインストールする
埋め込まれた ターミナル (Alt+F12 )で、次のいずれかのコマンドを入力します。
npm install cucumberをプロジェクトにローカルインストールします。グローバルインストール用の
npm install -g cucumbernpm install --save-dev cucumberは、Cucumber.js を 開発依存関係(英語)としてインストールします。
Cucumber.js 公式サイトの Cucumber.js デモ(英語)も参照してください。
テスト定義の作成
PyCharm では、JavaScript と TypeScript の両方でステップ定義を書くことができます。 PyCharm は定義が不足しているステップを検出してハイライトし、生成するためのクイックフィックスを提案します。
定義なしのステップにキャレットを置き、 Alt+Enter を押して、 ステップ定義を作成する または すべてのステップ定義を作成する を選択します。

または、ステップ上にマウスを移動し、ポップアップ内のリンクを使用してください。

開いたダイアログで、新しいファイルの名前と定義を書く言語を指定してください。

そのようなファイルがすでに存在する場合、PyCharm はポップアップを表示し、定義を追加するファイルを選択するか、新しいファイルの作成を選択する必要があります。
テストの実行
Cucumber.js テストは、実行 / デバッグ構成によってのみ起動されます。
Cucumber.js 実行構成を作成する
実行 / デバッグ構成ダイアログ (メインメニューの ) を開き、左側のペインで
をクリックし、リストから Cucumber.js ● を選択します。 実行 / デバッグ構成: Cucumber.js ダイアログが開きます。
フィーチャーファイルまたはディレクトリ フィールドで、実行するテストを指定します。 多数の機能を実行する場合は、特定の .feature ファイルまたはフォルダーへのパスを入力します。
使用する Node.js ランタイムを指定します。
Project エイリアスを選択すると、PyCharm は ノードランタイム フィールドがある JavaScript ランタイムページのプロジェクトのデフォルトインタープリターを自動的に使用します。 ほとんどの場合、PyCharm はプロジェクトのデフォルトランタイムを検出し、そのフィールドに自動で入力します。
別の構成済みのローカルインタープリターまたはリモートインタープリターを選択するか、
をクリックして新しいインタープリターを構成することもできます。
Cucumber パッケージ フィールドで、 cucumber パッケージが格納されているフォルダーへのパスを指定します。
アプリケーションの作業ディレクトリを指定します。 デフォルトでは、 作業ディレクトリ フィールドにはプロジェクトのルートフォルダーが表示されます。 この事前定義された設定を変更するには、目的のフォルダーへのパスを指定してください。
オプション:
「名前フィルター 」フィールドに、フィーチャーファイルまたはディレクトリからのすべてのシナリオの代わりに実行する特定のシナリオの名前を入力します。
実行可能ファイルに渡すコマンドライン引数 (
-r--require LIBRARY|DIR、-t--tags TAG_EXPRESSION、--coffeeなど) を指定します。 詳細については、cucumber-js --helpコマンドを通じて利用できるネイティブの組み込みヘルプを参照してください。環境変数 フィールドで、アプリケーションの環境変数を指定します。
実行構成を介してテストを実行する
構成のリストから Cucumber.js 実行 / デバッグ構成を選択し、リストまたはツールバーの
をクリックします。
実行 ツールウィンドウの テストランナー タブで、テストの実行を監視し、テスト結果を分析します。 詳細については、 テスト結果の調査を参照してください。
テストファイルからテストを実行する
単一のテストを実行するには、エディターでテストファイルを開き、実行するシナリオにキャレットを置き、コンテキストメニューから を選択します。
単一のテストファイルからすべてのテストを実行するには、エディターでテストファイルを開くか、 Project ツールウィンドウでテストファイルを選択し、コンテキストメニューから を選択します。
どちらの場合でも、PyCharm は実行 / デバッグ構成を作成し、後で保存して使用できます。
デバッグテスト
必要に応じて ブレークポイントの設定。
実行構成によるテストのデバッグ
構成のリストから Cucumber.js 実行 / デバッグ構成を選択し、リストまたはツールバーの
をクリックします。
実行 ツールウィンドウの テストランナー タブで、テストの実行を監視し、テスト結果を分析します。 詳細については、 テスト結果の調査を参照してください。
テストファイルからテストをデバッグする
単一のテストをデバッグするには、必要に応じて ブレークポイントを設定し 、デバッグするシナリオにキャレットを置き、コンテキストメニューから を選択します。
単一のテストファイルからすべてのテストをデバッグするには、エディターでテストファイルを開くか、 Project ツールウィンドウでテストファイルを選択し、コンテキストメニューから を選択します。
どちらの場合でも、PyCharm は実行 / デバッグ構成を作成し、後で保存して使用できます。
TypeScript で書かれたテストの実行とデバッグ
Cucumber.js 実行 / デバッグ構成を 上記のように作成します。
起動前 領域で、
をクリックし、一覧から TypeScript をコンパイルする を選択して、使用する tsconfig.json ファイルを指定します。 PyCharm は Cucumber.js を実行する前に、この tsconfig.json を使って TypeScript コンパイラーを実行します。

TypeScript で書かれたテストをデバッグするには、 tsconfig.json を開き、
"sourceMap": trueを設定してソースマップを有効にします。
ナビゲーション
PyCharm を使用すると、ファイルと関連するテストファイル間、または Test Runner タブのテスト結果からテストへジャンプできます。
テストとそのサブジェクト間、またはその逆に移動するには、エディターでファイルを開き、コンテキストメニューから または を選択するか、 Ctrl+Shift+T を押します。
.feature ファイルのステップからステップ定義に移動するには、 Ctrl を押したまま、ステップにカーソルを合わせ、リンクになったときにステップをクリックします。
テスト結果からテスト定義に移動するには、「テストランナー 」タブでテスト名を 2 回クリックするか、コンテキストメニューから「 」を選択するか、単に F4 を押します。 テストファイルがエディターで開き、テスト定義にキャレットが置かれます。
構文ハイライトを構成する
好みや習慣に合わせて、Cucumber.js 対応の構文ハイライトを設定できます。
設定 ダイアログ (Ctrl+Alt+S) で、 に進みます。
配色を選択するか、デフォルトから継承されたハイライト設定を受け入れるか、 色とフォント の説明に従ってカスタマイズできます。