タイムトラベル

タイムトラベルモックとは

Mimicry のタイムトラベル機能は、API 通信・画面録画・デバイス情報を 1 つの .mimicry ファイルにパッケージ化する機能です。

録画したファイルはそのまま再生してモックとして利用でき、サーバーが停止していても同じ通信を何度でも再現できます。 ファイルを共有すれば、受け取った人も全く同じ通信環境を再現できます。

Charles や Proxyman の HAR エクスポートとは異なり、通信データの再生・画面録画の同期再生・デバイス情報の記録までを 1 ファイルで完結します。

録画

通信ログ画面の録画ボタンから録画を開始します。

録画開始ダイアログ。通信のみ録画と通信+画面録画の2つのモードから選択できる

録画モード

通信のみ

HTTP/HTTPS の通信データのみを記録します。

通信 + 画面録画

通信データに加えて、デバイスの画面を動画として同時に録画します。

画面録画対応デバイス

デバイス対応状況
iPhone 実機対応(iPhone ミラーリング経由)
iOS シミュレーター対応
Android 実機対応
Android エミュレーター対応

録画の流れ

1

録画中はすべての通信が記録されます。録画中はステータスバーに表示されます。

録画中のステータスバー表示
2

フィルタを設定すると、特定のドメインやアプリに絞って録画できます。

3

停止すると .mimicry ファイルとして保存されます。

.mimicry ファイル

録画は .mimicry 形式で保存されます。不具合の再現に必要な情報がすべて 1 ファイルにパッケージ化されています。

API 通信

リクエストとレスポンスの全データ (URL、メソッド、ヘッダー、ボディ、ステータスコード)

画面録画

デバイス画面の動画 (mp4)。通信とタイムスタンプで同期されています。

デバイス情報

デバイスの種類(実機 / シミュレーター)、モデル名、OS バージョン

HAR との違い: HAR はテキスト形式の通信ログで、再生機能はありません。.mimicryは通信データをそのままモックとして再生でき、画面録画やデバイス情報も含む自己完結型のパッケージです。

再生

録画ライブラリから録画を選択して再生します。再生中は Mimicry が録画データからレスポンスを返すため、サーバーへの通信は不要です。

録画ライブラリ。録画一覧と各録画の詳細(エントリ数、ファイルサイズ、通信ログ)を確認できる

マッチング方式

URL とメソッドが一致するリクエストに対して、録画済みのレスポンスを返します。リクエストの順序は問いません。

ヒント: アプリの操作順序が録画時と異なっていてもレスポンスが正しく返されます。

再生ビューア

録画した画面と通信ログを同期再生する専用ウィンドウです。

分割表示

動画プレーヤーとエントリリストを上下または左右に分割して表示します。

タイムラインバー

各リクエストの発生タイミングをタイムライン上に可視化します。

再生速度

0.5x / 1x / 1.5x / 2x の再生速度から選択できます。

共有

.mimicry ファイルを渡すだけで、不具合の再現に必要な情報をすべて共有できます。

共有方法

AirDrop

Slack

Git

メール

受け取った側の操作

1

.mimicry ファイルをダブルクリック、または Mimicry にドラッグ&ドロップ

2

再生ビューアで画面録画と API 通信を同期再生して不具合を確認

3

タイムトラベル再生を開始すれば、アプリが同じ API レスポンスを受け取り、同じ挙動を再現

ポイント: サーバーの状態やネットワーク環境に依存しません。受け取った人のローカル環境だけで、録画された通信を完全に再現できます。

ユースケース

バグ再現の共有

「自分の環境では再現しない」を解消します。 不具合が発生した通信・画面・デバイス情報がすべてパッケージ化されているため、 受け取った開発者はサーバーの状態に関係なく全く同じ通信を再現できます。

1

QA が不具合発生時に録画

2

.mimicry ファイルをチケットに添付

3

開発者がファイルを開いて即座に再現・修正

サーバー停止時の開発

録画を再生すればサーバーなしで開発を継続できます。メンテナンス中でも作業が止まりません。

コードレビューの効率化

画面と通信を同期再生して動作確認。レビュアーが実際の挙動を素早く把握できます。