投稿日:2022/10/11 最終更新日:2022/10/11
Jestで「describe is not defined」とエラーが出たときの解決法
現象
Next.jsでJestを使用した際に出てきたエラーです。
必要なパッケージはインストール出来ていましたが、なぜか「describe is not defined」と表示されてテストが出来ませんでした。
他にも、「tohaveattribute is not a function」や「expect(…).~ is not a function」などが表示されました。
解決方法
これは、かなり簡単に解決をしました。
Next.jsの場合、create-next-appで環境作成をすることが多いのですが、create-react-appと違いJestが用意されていません。
そのため、手動でJestのパッケージをnpmもしくはyarnでインストールしなければいけません。
また、全てインストールされていたとしてもimport文に不足があったとした場合も作動はしません。
私の場合は○○.test.jsファイルに以下のimport文を追加したところ正しく動作をしました。
import '@testing-library/jest-dom';
上記のimport文がないとdescribeやexpectの関数などを読み込むことが出来ませんのでご注意を!