Jestで「describe is not defined」とエラーが出たときの解決法

投稿日: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の関数などを読み込むことが出来ませんのでご注意を!