data-testid が無いアプリの Playwright ロケータは親要素でスコープして一意化する
テスト
Playwright
ブラウザ自動化
知識
運用
data-testid を振っていないアプリをブラウザ自動化するとき、text / aria-label / CSS だけでロケータを組むと、同じリンク・同じ aria-label がレイアウト上の複数箇所(サイドバー・ヘッダー・ボトムメニュー・フローティングボタンなど)に重複して存在し、strict mode で多重マッチしてロケータが壊れる。
技法: レイアウト由来の重複は、親コンテナ(aside / main など、そのUI領域を囲む要素)でスコープを絞って一意化する。例: aside a[href="/user/memos"]、main [aria-label="メモを作成"]。nth/first で位置指定するより、意味のある親でスコープする方が壊れにくい。