1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

テストが数十分かかる・固まる原因はiCloudだった

1
Posted at

はじめに

React + TypeScriptのプロジェクトでJestを実行したところ、テストが終わらない、終わっても十数分〜二十分以上かかる、という状態になりました。
原因を追った結果、プロジェクトを ~/Desktop に置いていて、iCloud Driveの同期対象になっていたことでした。

環境

  • macOS
  • Node.js
  • Jest / React Testing Library
  • プロジェクトの場所: ~/Desktop/project

症状

npm run test を実行すると、次のように表示されたまま進みませんでした。

 RUNS  src/__tests__/AddRecordModal.spec.tsx
 RUNS  src/__tests__/AppComponent.spec.tsx
 RUNS  src/__tests__/add.spec.ts

Test Suites: 0 of 3 total
Tests:       0 total
Time:        95 s

試したが原因ではなかったこと

  • dotenv を疑い、jest.setup.ts から外す
  • Node.jsのバージョン確認(v22)

原因: DesktopがiCloudと同期されていた

プロジェクトの場所を確認すると /Users/owner1/Desktop/... でした。
Finderでプロジェクトを移動しようとしたとき、Desktopのフォルダに雲のアイコン(☁️)が付いていて、「デスクトップと書類フォルダ」がiCloud Driveで同期されていることに気づきました。

同期の対象になると、読み込む処理が、極端に遅くなります。

解決方法: 同期されない場所へ移動する

同期をオフにすると他のファイルにも影響するので、プロジェクトをデスクトップではなく別のフォルダに移動しました。

結果

無事に数秒でテストが通るようになりました。

まとめ

  • Desktop、書類フォルダ、iCloud Drive配下は、同期の対象になることがある
  • 開発用プロジェクトは ~/projects のような同期対象外の場所に置く
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?