A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://playwright.bootcss.com/python/docs/actionability below:

Auto-waiting | Playwright

Playwright performs a range of actionability checks on the elements before making actions to ensure these actions behave as expected. It auto-waits for all the relevant checks to pass and only then performs the requested action. If the required checks do not pass within the given timeout, action fails with the TimeoutError.

For example, for page.click(selector, **kwargs), Playwright will ensure that:

Here is the complete list of actionability checks performed for each action:

Action Attached Visible Stable Receives Events Enabled Editable check Yes Yes Yes Yes Yes - click Yes Yes Yes Yes Yes - dblclick Yes Yes Yes Yes Yes - tap Yes Yes Yes Yes Yes - uncheck Yes Yes Yes Yes Yes - hover Yes Yes Yes Yes - - scrollIntoViewIfNeeded Yes Yes Yes - - - screenshot Yes Yes Yes - - - fill Yes Yes - - Yes Yes selectText Yes Yes - - - - dispatchEvent Yes - - - - - focus Yes - - - - - getAttribute Yes - - - - - innerText Yes - - - - - innerHTML Yes - - - - - press Yes - - - - - setInputFiles Yes - - - - - selectOption Yes - - - - - textContent Yes - - - - - type Yes - - - - -
Forcing actions#

Some actions like page.click(selector, **kwargs) support force option that disables non-essential actionability checks, for example passing truthy force to page.click(selector, **kwargs) method will not check that the target element actually receives click events.

Assertions#

You can check the actionability state of the element using one of the following methods as well. This is typically not necessary, but it helps writing assertive tests that ensure that after certain actions, elements reach actionable state:


Attached#

Element is considered attached when it is connected to a Document or a ShadowRoot.

Visible#

Element is considered visible when it has non-empty bounding box and does not have visibility:hidden computed style. Note that elements of zero size or with display:none are not considered visible.

Stable#

Element is considered stable when it has maintained the same bounding box for at least two consecutive animation frames.

Enabled#

Element is considered enabled when it is not a <button>, <select>, <input> or <textarea> with a disabled property set.

Editable#

Element is considered editable when it is enabled and does not have readonly property set.

Receives Events#

Element is considered receiving pointer events when it is the hit target of the pointer event at the action point. For example, when clicking at the point (10;10), Playwright checks whether some other element (usually an overlay) will instead capture the click at (10;10).

For example, consider a scenario where Playwright will click Sign Up button regardless of when the page.click(selector, **kwargs) call was made:


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4