GoogleカレンダーのモックCalendarpitを触ってみた。
「期限切れ」と「取り消し」は、どちらも同じ401で返ってくる。見分けるには、次にトークンの更新を頼む。通れば期限切れ、弾かれれば取り消し。
期限切れは1時間待たないと起きないので、「更新が通る道」はテストから漏れやすい。待たないと起きない状態こそ、先に観点表に書いておきたい。
画面の観点(Googleカレンダーとの接続が切れたとき)
・期限切れ:気づかせずに操作を続けさせる。書きかけは消さない
・取り消し:「連携が切れました」と出して再接続へ。戻ったら元の画面に
・拒否:エラー画面にせず、静かに元の画面へ
・権限不足:何が足りないかを言葉で出す
実装の観点(401を受けたとき)
・期限切れ:更新に成功したら元の操作を再実行する。再承認は出さない
・取り消し:更新がinvalid_grantなら再承認へ
・更新後も401:無限に繰り返さない
・403の権限不足:更新はせず、権限の追加を案内する
・同時に複数の401:更新は1回だけ
X版: https://x.com/1min_testdesign/status/2112379327883223240

X (formerly Twitter)1分テスト設計 (@1min_testdesign) on XGoogleカレンダーのモックCalendarpitを触った。 「期限切れ」と「取り消し」はどちらも同じ401で返る。 次に更新を頼んで、通れば期限切れ、弾かれれば取り消し。 期限切れは1時間待たないと起きないので、「更新が通る道」はテストから漏れやすい。 待たないと起きない状態こそ、先に観点表に書く。
commit f45494c