playwright/docs/src/release-notes-python.md

8.5 KiB

id title
release-notes Release notes

Version 1.13

Playwright

  • 🖖 Programmatic drag-and-drop support via the [method: Page.dragAndDrop] API.
  • 🔎 Enhanced HAR with body sizes for requests and responses. Use via recordHar option in [method: Browser.newContext].

Tools

  • Playwright Trace Viewer now shows parameters, returned values and console.log() calls.

New and Overhauled Guides

Browser Versions

  • Chromium 93.0.4576.0
  • Mozilla Firefox 90.0
  • WebKit 14.2

New Playwright APIs

  • new baseURL option in [method: Browser.newContext] and [method: Browser.newPage]
  • [method: Response.securityDetails] and [method: Response.serverAddr]
  • [method: Page.dragAndDrop] and [method: Frame.dragAndDrop]
  • [method: Download.cancel]
  • [method: Page.inputValue], [method: Frame.inputValue] and [method: ElementHandle.inputValue]
  • new force option in [method: Page.fill], [method: Frame.fill], and [method: ElementHandle.fill]
  • new force option in [method: Page.selectOption], [method: Frame.selectOption], and [method: ElementHandle.selectOption]

Version 1.12

🧟‍♂️ Introducing Playwright Trace Viewer

Playwright Trace Viewer is a new GUI tool that helps exploring recorded Playwright traces after the script ran. Playwright traces let you examine:

  • page DOM before and after each Playwright action
  • page rendering before and after each Playwright action
  • browser network during script execution

Traces are recorded using the new [property: BrowserContext.tracing] API:

browser = chromium.launch()
context = browser.new_context()

# Start tracing before creating / navigating a page.
context.tracing.start(screenshots=True, snapshots=True)

page.goto("https://playwright.dev")

# Stop tracing and export it into a zip archive.
context.tracing.stop(path = "trace.zip")

Traces are examined later with the Playwright CLI:

playwright show-trace trace.zip

That will open the following GUI:

image

👉 Read more in trace viewer documentation.

Browser Versions

  • Chromium 93.0.4530.0
  • Mozilla Firefox 89.0
  • WebKit 14.2

This version of Playwright was also tested against the following stable channels:

  • Google Chrome 91
  • Microsoft Edge 91

New APIs

  • reducedMotion option in [method: Page.emulateMedia], [method: BrowserType.launchPersistentContext], [method: Browser.newContext] and [method: Browser.newPage]
  • [event: BrowserContext.request]
  • [event: BrowserContext.requestFailed]
  • [event: BrowserContext.requestFinished]
  • [event: BrowserContext.response]
  • tracesDir option in [method: BrowserType.launch] and [method: BrowserType.launchPersistentContext]
  • new [property: BrowserContext.tracing] API namespace
  • new [method: Download.page] method

Version 1.11

🎥 New video: Playwright: A New Test Automation Framework for the Modern Web (slides)

  • We talked about Playwright
  • Showed engineering work behind the scenes
  • Did live demos with new features
  • Special thanks to applitools for hosting the event and inviting us!

Browser Versions

  • Chromium 92.0.4498.0
  • Mozilla Firefox 89.0b6
  • WebKit 14.2

New APIs

  • support for async predicates across the API in methods such as [method: Page.waitForRequest] and others
  • new emulation devices: Galaxy S8, Galaxy S9+, Galaxy Tab S4, Pixel 3, Pixel 4
  • new methods:
    • [method: Page.waitForURL] to await navigations to URL
    • [method: Video.delete] and [method: Video.saveAs] to manage screen recording
  • new options:
    • screen option in the [method: Browser.newContext] method to emulate window.screen dimensions
    • position option in [method: Page.check] and [method: Page.uncheck] methods
    • trial option to dry-run actions in [method: Page.check], [method: Page.uncheck], [method: Page.click], [method: Page.dblclick], [method: Page.hover] and [method: Page.tap]

Version 1.10

Bundled Browser Versions

  • Chromium 90.0.4430.0
  • Mozilla Firefox 87.0b10
  • WebKit 14.2

This version of Playwright was also tested against the following stable channels:

  • Google Chrome 89
  • Microsoft Edge 89

New APIs

Version 1.9

  • Playwright Inspector is a new GUI tool to author and debug your tests.

    • Line-by-line debugging of your Playwright scripts, with play, pause and step-through.
    • Author new scripts by recording user actions.
    • Generate element selectors for your script by hovering over elements.
    • Set the PWDEBUG=1 environment variable to launch the Inspector
  • Pause script execution with [method: Page.pause] in headed mode. Pausing the page launches Playwright Inspector for debugging.

  • New has-text pseudo-class for CSS selectors. :has-text("example") matches any element containing "example" somewhere inside, possibly in a child or a descendant element. See more examples.

  • Page dialogs are now auto-dismissed during execution, unless a listener for dialog event is configured. Learn more about this.

  • Playwright for Python is now stable with an idiomatic snake case API and pre-built Docker image to run tests in CI/CD.

Browser Versions

  • Chromium 90.0.4421.0
  • Mozilla Firefox 86.0b10
  • WebKit 14.1

New APIs

  • [method: Page.pause].

Version 1.8

New APIs

  • [method: ElementHandle.isChecked].
  • [method: ElementHandle.isDisabled].
  • [method: ElementHandle.isEditable].
  • [method: ElementHandle.isEnabled].
  • [method: ElementHandle.isHidden].
  • [method: ElementHandle.isVisible].
  • [method: Page.isChecked].
  • [method: Page.isDisabled].
  • [method: Page.isEditable].
  • [method: Page.isEnabled].
  • [method: Page.isHidden].
  • [method: Page.isVisible].
  • New option 'editable' in [method: ElementHandle.waitForElementState].

Browser Versions

  • Chromium 90.0.4392.0
  • Mozilla Firefox 85.0b5
  • WebKit 14.1

Version 1.7

  • New Java SDK: Playwright for Java is now on par with JavaScript, Python and .NET bindings.
  • Browser storage API: New convenience APIs to save and load browser storage state (cookies, local storage) to simplify automation scenarios with authentication.
  • New CSS selectors: We heard your feedback for more flexible selectors and have revamped the selectors implementation. Playwright 1.7 introduces new CSS extensions and there's more coming soon.
  • New website: The docs website at playwright.dev has been updated and is now built with Docusaurus.
  • Support for Apple Silicon: Playwright browser binaries for WebKit and Chromium are now built for Apple Silicon.

New APIs

  • [method: BrowserContext.storageState] to get current state for later reuse.
  • storageState option in [method: Browser.newContext] and [method: Browser.newPage] to setup browser context state.

Browser Versions

  • Chromium 89.0.4344.0
  • Mozilla Firefox 84.0b9
  • WebKit 14.1