teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

試したことなどを補足しました。

2023/06/01 09:07

投稿

watasida
watasida

スコア6

title CHANGED
File without changes
body CHANGED
@@ -1,16 +1,28 @@
1
1
  ### 実現したいこと
2
2
 
3
- Jestでのテスト実行
3
+ Next.jsプロジェクトでのJestでのテスト実行
4
4
 
5
5
  ### 前提
6
6
 
7
- nanoidというライブラリをインポートしてJestでテストを実行したところ、SyntaxError: Unexpected token 'export' というエラーが出ました。
7
+ Next.jsのプロジェクトを`create-next-app`で作成し、nanoidというライブラリをインールしてJestでテストを実行したところ、SyntaxError: Unexpected token 'export' というエラーが出ました。
8
- 以下記事参考に、jest.config.jsを書き換えてみましたが、全同じエラー
8
+ nanoidimport部分削除すると問題なテスト実行されした
9
- https://beyooon.jp/blog/nanoid-v4-fails-jest/
10
9
 
10
+ 以下の記事を参考に、`jest.config.js`に以下を書き加えましたが、全く同じエラーが出ます。
11
+ ```javascript
12
+ const config = {
13
+ // 追記
14
+ transformIgnorePatterns: [`node_modules/(?!nanoid/)`],
15
+ // その他の設定
16
+ }
17
+
18
+ module.exports = config
19
+ ```
20
+ 参考にした記事:https://beyooon.jp/blog/nanoid-v4-fails-jest/
21
+
11
22
  ### 発生している問題・エラーメッセージ
12
23
 
13
24
  npm run test でターミナルに出力されるエラーです。
25
+ `node_modules/nanoid/index.browser.js`というファイルの export でエラーが出ているようです。
14
26
 
15
27
  ```terminal
16
28
  > next13-jest-swc@0.1.0 test
@@ -60,6 +72,20 @@
60
72
  Ran all test suites.
61
73
  ```
62
74
 
75
+ ### 試したこと
76
+ 前提の部分で参考にした記事によれば、nanoid4以降で発生している問題らしいので、nanoidのverison3をインストールし直してテストを実行してみました。
77
+ 以下のようなエラーが出ました。
78
+ やはり`/node_modules/nanoid/index.browser.js`というファイルで、この場合は import でエラーが出ています。
79
+ ```
80
+ Details:
81
+
82
+ /Users/sekiguchi/dev/react-liblary-exmples/next13-jest-swc/node_modules/nanoid/index.browser.js:1
83
+ ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,jest){import { urlAlphabet } from './url-alphabet/index.js'
84
+ ^^^^^^
85
+
86
+ SyntaxError: Cannot use import statement outside a module
87
+ ```
88
+
63
89
  ### 該当のソースコード
64
90
  テスト対象のページ(index.tsx)です
65
91
  ```tsx
@@ -123,8 +149,7 @@
123
149
  '<rootDir>/.next/',
124
150
  ],
125
151
 
126
- // コンパイル対象外のフォルダーを指定(nanoidを指定)
127
- transformIgnorePatterns: ['/node_modules/', `node_modules/(?!nanoid/)`, `<rootDir>/.next`],
152
+ transformIgnorePatterns: [`node_modules/(?!nanoid/)`],
128
153
 
129
154
  transform: {
130
155
  '.+\\.(t|j)sx?$': [

1

エラーメッセージ編集

2023/06/01 05:02

投稿

watasida
watasida

スコア6

title CHANGED
File without changes
body CHANGED
@@ -41,7 +41,7 @@
41
41
 
42
42
  Details:
43
43
 
44
- /Users/sekiguchi/dev/react-liblary-exmples/next13-jest-swc/node_modules/nanoid/index.browser.js:1
44
+ /Users/user/dev/react-liblary-exmples/next13-jest-swc/node_modules/nanoid/index.browser.js:1
45
45
  ({"Object.<anonymous>":function(module,exports,require,__dirname,__filename,jest){export { urlAlphabet } from './url-alphabet/index.js'
46
46
  ^^^^^^
47
47