🐺
Cucumber (cypress) - "ステップ未定義エラー "の解決
はじめに
VSCodeでCucumberのステップを定義したfeatureファイルは
プロジェクトの構成次第ではStepとの紐付けを認識できない場合があり
設定を加えて実装に飛べるようにする話です。
環境
- Cypress
- Cucumber
Cucumberの拡張機能を入れる
Cucumberの公式拡張機能は入れておく
設定ファイルの記述
VSCodeのsettings.jsonを作成する
設定内容
{
"cucumber.features": [
"cypress/e2e/features/*.feature"
], "cucumber.glue": [
"cypress/e2e/step_definitions/*.js"
]
}
※ディレクトリはそれぞれのプロジェクトに合わせる
cucumber.features
cucumber.features
の設定は、拡張子が.featureファイルを探す場所を上書きする。
featureファイルが見つからない場合、オートコンプリートは動作しないらしい。
デフォルトは下記内容
{
"cucumber.features": [
"src/test/**/*.feature",
"features/**/*.feature",
"tests/**/*.feature",
"*specs*/**/*.feature"
]
}
cucumber.glue
cucumber.glue
の設定は、ステップ定義とパラメータタイプが定義されているソースコードを拡張機能が探す場所を上書きする。
glueファイルが見つからない場合、オートコンプリートは動作せず、すべてのGherkinステップは未定義として下線が引かれてしまう。
ステップ定義の生成も機能しない。
デフォルトは下記内容
{
"cucumber.glue": [
"*specs*/**/*.cs",
"features/**/*.js",
"features/**/*.jsx",
"features/**/*.php",
"features/**/*.py",
"features/**/*.rs",
"features/**/*.rb",
"features/**/*.ts",
"features/**/*.tsx",
"features/**/*_test.go",
"src/test/**/*.java",
"tests/**/*.py",
"tests/**/*.rs"
]
}
その他詳細
その他の詳細はREADMEに記載されています。
Discussion