RoboCon 2024

Browser Library Advanced Workshop
2024-02-06 , Browser Library Advanced Workshop

Learn how to use Robot Framework Browser like a pro.

Extending Browser library, using it from Python, interacting with Playwright and many more.


Dive deep into the world of web automation with Tatu and René using the Browser library for Robot Framework. This state-of-the-art library, powered by Playwright, is designed for the modern web, ensuring speed, reliability, and visibility. In this workshop, participants will not only learn the basics of JavaScript but also how to extend the Browser library by creating custom keywords in both JavaScript and Python. We’ll also cover the advanced features and keywords of the Browser library, ensuring a comprehensive understanding of web automation.

Agenda:
- Browser Fundamentals
- Installation and binary structure (Tatu)
- Importing Settings (René)
- Logging (playwright Logs, Robot Loglevel, PW Trace) (Tatu)
- Browser, Context, Page (Catalog, Switching) (Tatu)
- Basic JS (René)
- Extending Browser
- JavaScript Plugin-API (René)
- Python Plugin-API (Tatu & René)
- AssertionEngine (Tatu)
- Using Browser from Python (René)
- Browser Advanced Keywords
- Waiting (Tatu)
- Promise To (René)
- Get Element States (René)
- Upload File (Selector or Dialog) (René)
- Selectors (CSS, nth, playwright possibilities) (René)


Lessons Learned:
  • Understand the capabilities of the Browser library and its integration with Playwright.
  • Learn to write custom keywords in JavaScript and Python to extend the Browser library.
  • Deep dive into advanced keywords and features of the Browser library.
  • Gain hands-on experience with real-world web automation scenarios.
Describe your intended audience:

Knowledge Level:
- Robot Framework: Advanced knowledge and experience required.
- Browser or SeleniumLibrary: Familiarity with Browser Library or extensive experience with SeleniumLibrary.
- Web Testing: Experience in web automation and a basic understanding of HTML.
- Python: Basic proficiency.

Preparation and Tech Requirements:
- Computer: Capable of running Robot Framework and Browser library with internet access.
- Software:
- Python >= 3.8
- NodeJS 18 or 20
- Robot Framework >= 6.1
- Robot Framework Browser >= 18
- Editor (IDE) for Python and JavaScript (e.g., VSCode)
- Optional: Robot Framework language support (Recommended: Robot Code plugin for VSCode)
- Note: For those unable to install software, GitPod, a cloud-based browser IDE, is an alternative.
- Accounts: A GitHub account.
- Test Case: We will provide a test case to verify your setup.

Is this suitable for ..?:

Intermediate RF user, Advanced RF user

Tatu Aalto works at WithSecure as a Senior Software Developer in Test in team which makes Windows anti-virus client. He has +10 years experience with Robot Framework and more than 20 years experience in testing at general. Tatu maintains several libraries or tools in the Robot Framework ecosystem, example AssertionEngine and is one of the core team member in the Browser library.

This speaker also appears in:

René Rohner is a Principal Consultant for Quality Management, Product Owner of the Value Stream Test Automation at imbus in Germany and Chairman of the board of Robot Framework Foundation.

He is member of the Core Team of Robot Framework Browser and developer of Robot Framework DataDriver. He is trainer and coach for Keyword-Driven Testing in multiple small and huge projects in Germany.

This speaker also appears in: