BROWSER

Browser automation that doesn't flake.

Robot Framework deserves a browser automation solution designed for the 2020s. Browser library, powered by Playwright, provides speed, reliability and visibility.

What you get

Speed, reliability and visibility.

Speed

One Node process drives Chromium, Firefox and WebKit. No driver binary per browser, no version to keep in step with an update.

Reliability

Every action waits for the element to be actionable before it acts. No sleeps to tune, and no flake to chase down.

Visibility

Video, a Playwright trace and a screenshot on failure, attached to the Robot Framework log.

  • Conscientious assertions
  • Precise and fast browser window and tab control
  • Chainable selector strategies
  • Good shadow DOM support
  • Simple descriptors for mobile devices
  • Sending HTTP requests

How it works, and how it compares

Quick start

Running in five minutes.

Three blocks. Copy them in order and you have a passing test — nothing to configure in between.

Install the library and the browsers

rfbrowser init downloads the browser binaries Playwright drives. The tabs below pick your shell automatically.

$ pip install robotframework-browserSuccessfully installed robotframework-browser-20.3.0$ rfbrowser initInstalling Playwright browser binaries…chromium downloadedfirefox downloadedwebkit downloaded

Write a test

One import, no setup keyword, no explicit waits. Get Text both reads the value and asserts it — and it keeps re-reading until the search results arrive, which is why nothing here waits for them.

*** Settings ***Library     Browser*** Test Cases ***Search The Syllabus    New Page      https://syllabus.robotframework.org    Fill Text     id=search_input_react    Argument Types    Get Text      body    *=    2.5.2.8
Robot Framework8 linesUTF-8

Run it

Robot Framework as usual — the browser opens, acts and closes.

bash
$ robot first.robot=========================================================FirstSearch Robot Framework1 test, 1 passed, 0 failed

Next: the getting-started guide, or the keyword reference.

Community

Use. Benefit. Contribute.

Browser library is built in the open by the Robot Framework community — 206 people so far. Questions, ideas and bug reports are how most of them started, and how the library got this far.

Core team

They review the pull requests, cut the releases and answer the hard questions. If you are wondering who decides, it is these two — in the open, on GitHub.

Core team alumni

Browser exists because they built it. Stepping back from the core team does not undo that, so they stay listed here.

And 206 people who made it better

Bug reports, ideas, documentation, running main against a real suite before it was ever released. Most of them never wrote a line of code for Browser. See who did what.

Let's make the best Browser library.