Skip to content

Releases: MarketSquare/robotframework-browser

v0.12.0

04 Aug 13:34
Compare
Choose a tag to compare

New keywords:

  • Cookies
    • Get Cookies, Add Cookie, Delete All Cookies
  • Wait For Download
  • Upload File
  • Get BoundingBox to get element coordinates and size
    Improvements:
  • Autoclosing of contexts / pages / browsers in the context they are opened
    • A toggle
    • Page and Context id's are stable when pages and contexts get closed
  • More examples in README

Reverted changes:

  • rfbrowser init is back because automatically setting up node dependencies at import time had many problems.

v0.11.0

29 Jul 13:30
Compare
Choose a tag to compare

New keywords:

  • Get Elements gets list of elements matching selector and returns them as a list of elementhandle UUIDs. These can be used for iteration with other keywords.

Other enchancements:

  • Wait For Function and Execute JavaScript now accept our playwright selectors and our elementhandles as arguments to pass to the function executed on browser page. See examples
  • No longer need to separately run rfbrowser init. Dependencies are downloaded at library import if they don't exist on file system yet
  • Bugfix and test improvement for Highlight Elements
  • Functionality that was in rfbrowser init is now automatically done at library import time.

v0.10.0

24 Jul 13:56
Compare
Choose a tag to compare

New keywords:

  • Wait For Function (polls for a javascript function or expression to return a true value)
  • Wait For Request and Wait For Response

v0.9.0

22 Jul 12:14
Compare
Choose a tag to compare

New keywords:

  • http
    • executes fetch with page.evaluate
    • support all common HTTP methods, GET, POST, PUT, PATCH, DELETE and HEAD
    • if request body can be converted to JSON, it will automatically add content-type header
    • if response body can be converted to JSON, it will be returned as a Python dict.
  • Get Style (supports assertions)
  • Get Element (returns an element handle that can be used as a selector)

Other improvements:

  • Renamed Create _ keywords to New _
  • Improved python use (added script to generate static type stubs

v0.8.0

17 Jul 13:36
Compare
Choose a tag to compare

New keywords:

  • Set Viewport Size and Get Viewport Size
  • Switch Browser, Switch Context, renamed Switch Active Page to Switch Page
  • Get Browser Catalog to list all open browsers, contexts and pages
  • Close All Browsers

Improvements:

  • Create Browser and Create Context have options in type signature and parse them correctly
    • We're looking into hiding optional parameters from LSP autocompletion but it might take some time
  • Better activation of new browsers / contexts pages when using Switch Browser / Switch Context
  • More stable Browser aliases when closing Browsers

v0.7.1

15 Jul 16:22
23211fa
Compare
Choose a tag to compare

Fixed invalid parameters for opening the browser.

v0.7.0

14 Jul 13:29
Compare
Choose a tag to compare

New keywords:

  • New Browser, New Context and New Page to create playwright objects representing multiple browser instances, browser profiles (contexts) or tabs (pages)
  • Switch Context and Switch Page to switch between open pages
    • Switch Browser has been added but is unreliable and not recommended for use yet
  • Get Element Count- gets amount of elements matching selector and supports assertion syntax

Other features:

  • >>> selector syntax for piercing frames
  • Better error messages

v0.6.0

07 Jul 07:08
Compare
Choose a tag to compare

New keywords:

  • Select Options and Deselect Options (Keywords to manipulate <select> element options)
  • Wait For Elements State
  • Execute Javascript On Page
  • Get Page State

The two latter keywords were created to help with frontend JS integration. We will be adding more syntactic sugar and documentation in the near future.

v0.5.0

03 Jul 07:44
Compare
Choose a tag to compare

New Features:

  • Split keywords between Type Text And Fill Text. Type text inputs single keypress events (including keyup / keydowns). Fill inputs the text in a single events, like pasting it would.

  • Press Keys keyword to input series of keypresses (supports Keycodes like ArrowLeft or BackSpace)

  • Clear Text keyword that clears a textfield

  • Focus keyword to focus an element

  • Click With Options keyword to click with different mouse keys and passing other options. See keyword docs for more details.

  • Add Style Tag keyword to manipulate page CSS

  • Go Back and Go Forward keywords to use browser's back and forward features

  • Set Timeout and setting of timeout at library import time. This affects mostly input and getter keywords

  • Option to pass assertion_operator and assertion_expected as parameters to getter keywords to execute assertion

    • Deleted older Text Should Be style keywords in favor of Get Text equals content syntax
  • Option to disable headlessness through headless argument to keyword Open Browser (defaults to false)

v0.3.0

29 Jun 13:06
Compare
Choose a tag to compare
  • New keywords Get Element Attribute (might be renamed later) and Get Text.
  • New assertion syntax with optional keyword arguments assertion_operator and assertion_value for Get _ keywords.