テスト環境
- node: 18.15.0
- yarn: 4.0.0-rc.42
- cypress: 12.9.0
- vscode: 1.77.0
- ubuntu: 20.04.6 LTS
- volta: 1.1.1
解決方法
-
IDE Integration (Cypress公式ドキュメント)
- この方法だとうまくいかなかったので、以下のようにする
-
/// <reference path="../../.yarn/unplugged/cypress-npm-12.9.0-0c9e067ccc/node_modules/cypress/types/index.d.ts" />
を一行目に入れる- pathは適宜変更すること
node_modules/cypress/types/index.d.ts
があってればよい
- pathは適宜変更すること
原因
-
types="Cypress"
はnode_module/@cypress
に頼った方法だが、yarn
ではnode_module
フォルダが生成されないので、この方法は使えない - 直接、型定義ファイルである
index.d.ts
へのパスを指定してあげる
その他
- これはnode_moduleを生成しないyarnで発生する問題であり、npmでは問題なくintellisenseが使える
-
/// <reference ... />
はTypeScriptのものらしい
再現手順
- 以下のコマンドを実行
first.sh
yarn create react-app my-app cd my-app volta pin node@18.15.0 volta pin yarn@4.0.0-rc.42 yarn add cypress --dev yarn run cypress open
- Cypressの初回セットアップを行う
- 左の「E2E Testing」を選択
- Configuration filesの画面ですべてにチェックが入っていることを確認して、Continueをクリック
- Choose a browserの画面でChromeを選択
- Create your first specの画面で「Create new spec」を選択
- ファイル名はデフォルトのまま「Create spec」をクリック
- 「Great! The spec was successfully added」が表示されたら、いったんブラウザを閉じてCypressのサーバーを閉じる
- 以下のコマンドで新規ファイルを作成して、vscodeを開く
second.sh
touch cypress/e2e/first.cy.js code .
- describeと打ってみてもintellisense(予測変換みたいなもの)が出てこないのが確認できる
- 公式ドキュメントに従って、一行目に
/// <reference types="Cypress" />
を入れる - describeと打ってみてもやはりintellisenseが表示されない
参考サイト
-
create-react-app
- Creating an Appを参考にしました
-
Installing Cypress
- yarn addを参考にしました
-
Opening the App (Cypress)
- cypress openを参考にしました