Class FrameLocatorImpl
- All Implemented Interfaces:
FrameLocator
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.microsoft.playwright.FrameLocator
FrameLocator.GetByAltTextOptions, FrameLocator.GetByLabelOptions, FrameLocator.GetByPlaceholderOptions, FrameLocator.GetByRoleOptions, FrameLocator.GetByTextOptions, FrameLocator.GetByTitleOptions, FrameLocator.LocatorOptions -
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfirst()Returns locator to the first matching frame.frameLocator(String selector) When working with iframes, you can create a frame locator that will enter the iframe and allow selecting elements in that iframe.getByAltText(String text, FrameLocator.GetByAltTextOptions options) Allows locating elements by their alt text.getByAltText(Pattern text, FrameLocator.GetByAltTextOptions options) Allows locating elements by their alt text.getByLabel(String text, FrameLocator.GetByLabelOptions options) Allows locating input elements by the text of the associated<label>oraria-labelledbyelement, or by thearia-labelattribute.getByLabel(Pattern text, FrameLocator.GetByLabelOptions options) Allows locating input elements by the text of the associated<label>oraria-labelledbyelement, or by thearia-labelattribute.getByPlaceholder(String text, FrameLocator.GetByPlaceholderOptions options) Allows locating input elements by the placeholder text.getByPlaceholder(Pattern text, FrameLocator.GetByPlaceholderOptions options) Allows locating input elements by the placeholder text.getByRole(AriaRole role, FrameLocator.GetByRoleOptions options) getByTestId(String testId) Locate element by the test id.getByTestId(Pattern testId) Locate element by the test id.getByText(String text, FrameLocator.GetByTextOptions options) Allows locating elements that contain given text.getByText(Pattern text, FrameLocator.GetByTextOptions options) Allows locating elements that contain given text.getByTitle(String text, FrameLocator.GetByTitleOptions options) Allows locating elements by their title attribute.getByTitle(Pattern text, FrameLocator.GetByTitleOptions options) Allows locating elements by their title attribute.last()Returns locator to the last matching frame.locator(Locator selectorOrLocator, FrameLocator.LocatorOptions options) The method finds an element matching the specified selector in the locator's subtree.locator(String selector, FrameLocator.LocatorOptions options) The method finds an element matching the specified selector in the locator's subtree.nth(int index) Returns locator to the n-th matching frame.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.microsoft.playwright.FrameLocator
getByAltText, getByAltText, getByLabel, getByLabel, getByPlaceholder, getByPlaceholder, getByRole, getByText, getByText, getByTitle, getByTitle, locator, locator
-
Field Details
-
frame
-
frameSelector
-
-
Constructor Details
-
FrameLocatorImpl
-
-
Method Details
-
first
Description copied from interface:FrameLocatorReturns locator to the first matching frame.- Specified by:
firstin interfaceFrameLocator
-
frameLocator
Description copied from interface:FrameLocatorWhen working with iframes, you can create a frame locator that will enter the iframe and allow selecting elements in that iframe.- Specified by:
frameLocatorin interfaceFrameLocator- Parameters:
selector- A selector to use when resolving DOM element.
-
getByAltText
Description copied from interface:FrameLocatorAllows locating elements by their alt text.**Usage**
For example, this method will find the image by alt text "Playwright logo":
page.getByAltText("Playwright logo").click();- Specified by:
getByAltTextin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByAltText
Description copied from interface:FrameLocatorAllows locating elements by their alt text.**Usage**
For example, this method will find the image by alt text "Playwright logo":
page.getByAltText("Playwright logo").click();- Specified by:
getByAltTextin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByLabel
Description copied from interface:FrameLocatorAllows locating input elements by the text of the associated<label>oraria-labelledbyelement, or by thearia-labelattribute.**Usage**
For example, this method will find inputs by label "Username" and "Password" in the following DOM:
page.getByLabel("Username").fill("john"); page.getByLabel("Password").fill("secret");- Specified by:
getByLabelin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByLabel
Description copied from interface:FrameLocatorAllows locating input elements by the text of the associated<label>oraria-labelledbyelement, or by thearia-labelattribute.**Usage**
For example, this method will find inputs by label "Username" and "Password" in the following DOM:
page.getByLabel("Username").fill("john"); page.getByLabel("Password").fill("secret");- Specified by:
getByLabelin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByPlaceholder
Description copied from interface:FrameLocatorAllows locating input elements by the placeholder text.**Usage**
For example, consider the following DOM structure.
You can fill the input after locating it by the placeholder text:
page.getByPlaceholder("name@example.com").fill("playwright@microsoft.com");- Specified by:
getByPlaceholderin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByPlaceholder
Description copied from interface:FrameLocatorAllows locating input elements by the placeholder text.**Usage**
For example, consider the following DOM structure.
You can fill the input after locating it by the placeholder text:
page.getByPlaceholder("name@example.com").fill("playwright@microsoft.com");- Specified by:
getByPlaceholderin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByRole
Description copied from interface:FrameLocatorAllows locating elements by their ARIA role, ARIA attributes and accessible name.**Usage**
Consider the following DOM structure.
You can locate each element by it's implicit role:
assertThat(page .getByRole(AriaRole.HEADING, new Page.GetByRoleOptions().setName("Sign up"))) .isVisible(); page.getByRole(AriaRole.CHECKBOX, new Page.GetByRoleOptions().setName("Subscribe")) .check(); page.getByRole(AriaRole.BUTTON, new Page.GetByRoleOptions().setName( Pattern.compile("submit", Pattern.CASE_INSENSITIVE))) .click();**Details**
Role selector **does not replace** accessibility audits and conformance tests, but rather gives early feedback about the ARIA guidelines.
Many html elements have an implicitly defined role that is recognized by the role selector. You can find all the supported roles here. ARIA guidelines **do not recommend** duplicating implicit roles and attributes by setting
roleand/oraria-*attributes to default values.- Specified by:
getByRolein interfaceFrameLocator- Parameters:
role- Required aria role.
-
getByTestId
Description copied from interface:FrameLocatorLocate element by the test id.**Usage**
Consider the following DOM structure.
You can locate the element by it's test id:
page.getByTestId("directions").click();**Details**
By default, the
data-testidattribute is used as a test id. UseSelectors.setTestIdAttribute()to configure a different test id attribute if necessary.- Specified by:
getByTestIdin interfaceFrameLocator- Parameters:
testId- Id to locate the element by.
-
getByTestId
Description copied from interface:FrameLocatorLocate element by the test id.**Usage**
Consider the following DOM structure.
You can locate the element by it's test id:
page.getByTestId("directions").click();**Details**
By default, the
data-testidattribute is used as a test id. UseSelectors.setTestIdAttribute()to configure a different test id attribute if necessary.- Specified by:
getByTestIdin interfaceFrameLocator- Parameters:
testId- Id to locate the element by.
-
getByText
Description copied from interface:FrameLocatorAllows locating elements that contain given text.See also
Locator.filter()that allows to match by another criteria, like an accessible role, and then filter by the text content.**Usage**
Consider the following DOM structure:
You can locate by text substring, exact string, or a regular expression:
// Matches <span> page.getByText("world") // Matches first <div> page.getByText("Hello world") // Matches second <div> page.getByText("Hello", new Page.GetByTextOptions().setExact(true)) // Matches both <div>s page.getByText(Pattern.compile("Hello")) // Matches second <div> page.getByText(Pattern.compile("^hello$", Pattern.CASE_INSENSITIVE))**Details**
Matching by text always normalizes whitespace, even with exact match. For example, it turns multiple spaces into one, turns line breaks into spaces and ignores leading and trailing whitespace.
Input elements of the type
buttonandsubmitare matched by theirvalueinstead of the text content. For example, locating by text"Log in"matches<input type=button value="Log in">.- Specified by:
getByTextin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByText
Description copied from interface:FrameLocatorAllows locating elements that contain given text.See also
Locator.filter()that allows to match by another criteria, like an accessible role, and then filter by the text content.**Usage**
Consider the following DOM structure:
You can locate by text substring, exact string, or a regular expression:
// Matches <span> page.getByText("world") // Matches first <div> page.getByText("Hello world") // Matches second <div> page.getByText("Hello", new Page.GetByTextOptions().setExact(true)) // Matches both <div>s page.getByText(Pattern.compile("Hello")) // Matches second <div> page.getByText(Pattern.compile("^hello$", Pattern.CASE_INSENSITIVE))**Details**
Matching by text always normalizes whitespace, even with exact match. For example, it turns multiple spaces into one, turns line breaks into spaces and ignores leading and trailing whitespace.
Input elements of the type
buttonandsubmitare matched by theirvalueinstead of the text content. For example, locating by text"Log in"matches<input type=button value="Log in">.- Specified by:
getByTextin interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByTitle
Description copied from interface:FrameLocatorAllows locating elements by their title attribute.**Usage**
Consider the following DOM structure.
You can check the issues count after locating it by the title text:
assertThat(page.getByTitle("Issues count")).hasText("25 issues");- Specified by:
getByTitlein interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
getByTitle
Description copied from interface:FrameLocatorAllows locating elements by their title attribute.**Usage**
Consider the following DOM structure.
You can check the issues count after locating it by the title text:
assertThat(page.getByTitle("Issues count")).hasText("25 issues");- Specified by:
getByTitlein interfaceFrameLocator- Parameters:
text- Text to locate the element for.
-
last
Description copied from interface:FrameLocatorReturns locator to the last matching frame.- Specified by:
lastin interfaceFrameLocator
-
locator
Description copied from interface:FrameLocatorThe method finds an element matching the specified selector in the locator's subtree. It also accepts filter options, similar toLocator.filter()method.- Specified by:
locatorin interfaceFrameLocator- Parameters:
selector- A selector or locator to use when resolving DOM element.
-
locator
Description copied from interface:FrameLocatorThe method finds an element matching the specified selector in the locator's subtree. It also accepts filter options, similar toLocator.filter()method.- Specified by:
locatorin interfaceFrameLocator- Parameters:
selectorOrLocator- A selector or locator to use when resolving DOM element.
-
nth
Description copied from interface:FrameLocatorReturns locator to the n-th matching frame. It's zero based,nth(0)selects the first frame.- Specified by:
nthin interfaceFrameLocator
-