Playwright Locator クラス API

Locator は Playwright のロケーターオブジェクトであり、チェーン絞り込み、操作、アサーションを提供します。


Locator 操作メソッド

メソッド説明
locator.click(options?)要素をクリック
locator.dblclick(options?)要素をダブルクリック
locator.hover(options?)マウスホバー
locator.fill(value, options?)クリアしてテキストを入力
locator.type(text, options?)1文字ずつ入力
locator.clear(options?)入力欄をクリア
locator.check(options?)チェックボックスをオン
locator.uncheck(options?)チェックを外す
locator.setChecked(checked, options?)チェックボックスの状態を設定
locator.selectOption(values, options?)ドロップダウンのオプションを選択
locator.setInputFiles(files, options?)ファイルアップロードを設定
locator.dragTo(target, options?)ターゲット要素にドラッグ
locator.press(key, options?)キーを押す
locator.screenshot(options?)要素のスクリーンショット
locator.scrollIntoViewIfNeeded(options?)表示されるまでスクロール

Locator チェーン絞り込み

メソッド説明
locator.first()最初に一致する要素を取得
locator.last()最後に一致する要素を取得
locator.nth(index)n 番目(0 始まり)を取得
locator.filter(options?)条件でフィルタリング(hasText、has、hasNot)
locator.locator(selector)一致結果内でさらに検索
locator.getByRole(role, options?)一致結果内でロールで検索
locator.getByText(text)一致結果内でテキストで検索
locator.getByLabel(text)一致結果内でラベルで検索
locator.and(locator)論理 AND(1.63+)
locator.or(locator)論理 OR(1.63+)

Locator 情報取得

メソッド説明
locator.textContent(options?)テキスト内容を取得
locator.innerHTML(options?)innerHTML を取得
locator.innerText(options?)表示テキストを取得
locator.inputValue(options?)input 値を取得
locator.getAttribute(name)属性値を取得
locator.count()一致数を取得
locator.isVisible(options?)表示されているかどうか
locator.isHidden(options?)非表示かどうか
locator.isEnabled(options?)有効かどうか
locator.isDisabled(options?)無効かどうか
locator.isEditable(options?)編集可能かどうか
locator.isChecked(options?)チェック済みかどうか
locator.boundingBox(options?)要素の位置とサイズを取得

Locator JS 実行

メソッド説明
locator.evaluate(fn, arg?, options?)要素のコンテキストで JS を実行
locator.evaluateAll(fn, arg?)一致するすべての要素で JS を実行
locator.evaluateHandle(fn, arg?, options?)JS を実行して JSHandle を返す

LocatorAssertions(自動リトライ)

アサーションメソッド説明
expect(locator).toBeAttached()要素が DOM 内にある
expect(locator).toBeChecked()チェック済み
expect(locator).toBeDisabled()無効
expect(locator).toBeEditable()編集可能
expect(locator).toBeEmpty()内容が空
expect(locator).toBeEnabled()有効
expect(locator).toBeFocused()フォーカスされている
expect(locator).toBeHidden()要素が非表示
expect(locator).toBeInViewport()要素がビューポート内にある
expect(locator).toBeVisible()要素が表示されている
expect(locator).toContainText(text)テキストを含む
expect(locator).toHaveAccessibleDescription(desc)アクセシブルな説明がある
expect(locator).toHaveAccessibleName(name)アクセシブルな名前がある
expect(locator).toHaveAttribute(name, value?)DOM 属性を持つ
expect(locator).toHaveClass(className)CSS クラス名を持つ
expect(locator).toHaveCount(count)指定された数を持つ
expect(locator).toHaveCSS(name, value)CSS プロパティ値を持つ
expect(locator).toHaveId(id)ID を持つ
expect(locator).toHaveText(text)テキスト内容が一致
expect(locator).toHaveValue(value)入力値が一致
expect(locator).toHaveValues(values)複数値の一致(複数選択)
expect(locator).toHaveScreenshot(options?)要素スクリーンショットの比較

FrameLocator クラス

メソッド説明
frameLocator.getByRole(role, options?)ロールでロケート
frameLocator.getByText(text)テキストでロケート
frameLocator.getByLabel(text)ラベルでロケート
frameLocator.getByPlaceholder(text)プレースホルダーでロケート
frameLocator.getByTestId(id)testId でロケート
frameLocator.locator(selector)CSS/XPath ロケート
frameLocator.frameLocator(selector)ネストされた iframe のロケート
frameLocator.first()最初を取得
frameLocator.last()最後を取得
frameLocator.nth(index)n 番目を取得
その他の拡張