既知の問題
Workers Vitestプールは現在オープンベータ中です。以下はCloudflareが認識している問題で、修正中のものです。
V8 ↗を介したネイティブコードカバレッジはサポートされていません。代わりに、Istanbul ↗を介した計測されたコードカバレッジを使用する必要があります。セットアップ手順については、Vitest Coverage documentation ↗を参照してください。
Vitestのフェイクタイマー ↗はKV、R2、およびキャッシュシミュレーターには適用されません。たとえば、フェイクタイムを進めることでKVキーを期限切れにすることはできません。
動的import()ステートメントは、SELFを使用した統合テストのexport default { ... }ハンドラー内や、Durable Objectイベントハンドラー内では機能しません。ハンドラーを直接インポートして呼び出すか、グローバルスコープで静的importステートメントを使用する必要があります。
Durable Objectアラームはテスト実行間でリセットされず、隔離ストレージを尊重しません。テストを終了する前に、各テストでスケジュールされたrunDurableObjectAlarm()を削除または実行することを確認してください。
isolatedStorageフラグをオンにした状態でDurable ObjectsとWebSocketsを使用することはサポートされていません。vitest.config.tsファイルでisolatedStorage: falseを設定する必要があります。
RPCメソッドから非プリミティブ値(オブジェクトやRpcTargetを拡張するクラスなど)を返すには、usingキーワードを使用する必要があります。詳細については、https://developers.cloudflare.com/workers/runtime-apis/rpc/lifecycle#explicit-resource-management ↗を参照してください。例のテスト ↗はworkers-sdkリポジトリに含まれています。