Amazon Developer

as

Settings
Sign out
Notifications
Alexa
Amazonアプリストア
Ring
AWS
ドキュメント
Support
Contact Us
My Cases
開発
設計と開発
公開
リファレンス
サポート
メインコンテンツへスキップ

6.1 jest.config.jsを更新する

transformIgnorePatternsに@amazon-devices/react-native-keplerを含める必要があります。パッケージ4.0.0では、jest/setup.jsファイルでESモジュール構文が使用されています。このパターンがない場合、Jestは「SyntaxError: Cannot use import statement outside a module」というエラーで失敗します。

6.2 jest.setup.jsを作成してTV向けのモックを定義する

RN 0.83では、テスト環境でのモックの動作が変更されています。次の例のように、TVに適したモックを定義するセットアップファイルを作成します。

6.3 Jestモックの.defaultのエクスポートを修正する

RN 0.83では、多くの内部モジュールがexport defaultを使用するように変更されています。既存のJestモックが.defaultプロパティのないプレーンなオブジェクトを返している場合、実行時にコンポーネントがundefinedを受け取ることになり、そこで問題が発生します。 症状:複数のテストスイートで「Cannot read properties of undefined (reading 'create')」が発生します。 影響を受けるモジュール
  • react-native/Libraries/StyleSheet/StyleSheet
  • react-native/Libraries/StyleSheet/flattenStyle
  • react-native/Libraries/EventEmitter/NativeEventEmitter
  • react-native/Libraries/Utilities/Platform
  • react-native/Libraries/Utilities/Dimensions
  • react-native/Libraries/Utilities/PixelRatio
  • react-native/Libraries/Utilities/useWindowDimensions
  • react-native/Libraries/BatchedBridge/NativeModules
オブジェクト型のエクスポートパターンの修正
関数型のエクスポートパターンの修正

6.4 テストファイルを更新してact()でラップする

React 19では、次の例に示すように、テスト内の状態更新をact()でラップする必要があります。
@testing-library/react-native @testing-library/react-nativeを使用する場合ば、テストライブラリによってact()が内部で処理されます。このため、render()をReactTestRenderer.act()でラップしないでください。ラップすると、「Can’t access .root on unmounted test renderer」というエラーが発生します。

6.5 ナビゲーションスタックのタイマーのリークを修正する

react-navigation__stackを使用している場合、そのCard.tsxファイルで使用されるアニメーションのsetTimeoutコールバックが、Jestでテスト環境が破棄された後に呼び出されます。 症状:You are trying to import a file after the Jest environment has been torn down 修正:影響を受けるテストファイルに以下を追加します。

6.6 isolatedModulesの型のエクスポートエラーを修正する

TypeScriptから「TS1205: Re-exporting a type when 'isolatedModules' is enabled requires using 'export type'」というエラーが報告される場合は、次の例のように型のエクスポートを更新します。

6.7 スナップショットを更新する

テストの修正がすべて完了したら、スナップショットを再生成します。
変更点を確認します。React 19のスナップショットには、次のような違いがあることが想定されます。
  • コンポーネントラッパー構造の変更
  • 属性の順序の違い
  • テキストノードのレンダリングの変更
  • 非同期境界の更新
コミットする前に、git diffを使用してスナップショットの変更点を確認してください。
最終更新日 2026年10月26日