|
| 1 | +===================== |
| 2 | +SeleniumLibrary 6.1.0 |
| 3 | +===================== |
| 4 | + |
| 5 | + |
| 6 | +.. default-role:: code |
| 7 | + |
| 8 | + |
| 9 | +SeleniumLibrary_ is a web testing library for `Robot Framework`_ that utilizes |
| 10 | +the Selenium_ tool internally. SeleniumLibrary 6.1.0 is a new release with |
| 11 | +some enhancements around timeouts, broadening edge support and removing |
| 12 | +deprecated Opera support, and bug fixes. |
| 13 | + |
| 14 | +If you have pip_ installed, just run |
| 15 | + |
| 16 | +:: |
| 17 | + |
| 18 | + pip install --upgrade robotframework-seleniumlibrary |
| 19 | + |
| 20 | +to install the latest available release or use |
| 21 | + |
| 22 | +:: |
| 23 | + |
| 24 | + pip install robotframework-seleniumlibrary==6.1.0 |
| 25 | + |
| 26 | +to install exactly this version. Alternatively you can download the source |
| 27 | +distribution from PyPI_ and install it manually. |
| 28 | + |
| 29 | +SeleniumLibrary 6.1.0 was released on Wednesday May 3, 2023. SeleniumLibrary supports |
| 30 | +Python 3.7+, Selenium 4.0+ and Robot Framework 4.1.3 or higher. |
| 31 | + |
| 32 | +.. _Robot Framework: http://robotframework.org |
| 33 | +.. _SeleniumLibrary: https://github.com/robotframework/SeleniumLibrary |
| 34 | +.. _Selenium: http://seleniumhq.org |
| 35 | +.. _pip: http://pip-installer.org |
| 36 | +.. _PyPI: https://pypi.python.org/pypi/robotframework-seleniumlibrary |
| 37 | +.. _issue tracker: https://github.com/robotframework/SeleniumLibrary/issues?q=milestone%3Av6.1.0 |
| 38 | + |
| 39 | + |
| 40 | +.. contents:: |
| 41 | + :depth: 2 |
| 42 | + :local: |
| 43 | + |
| 44 | +Most important enhancements |
| 45 | +=========================== |
| 46 | + |
| 47 | +Set Page Load Timeout |
| 48 | +--------------------- |
| 49 | +The ability to set the page load timeout value was added (`#1535`_). This can be done on the Library import. |
| 50 | +For example, one could set it to ten seconds, as in, |
| 51 | + |
| 52 | +.. sourcecode:: robotframework |
| 53 | + |
| 54 | + *** Setting *** |
| 55 | + Library SeleniumLibrary page_load_timeout=10 seconds |
| 56 | + |
| 57 | +In addition there are two addition keywords (``Set Selenium Page Load Timeout`` and ``Get Selenium Page Load Timeout``) |
| 58 | +which allow for changing the page load timeout within a script. See the keyword documentation for more information. |
| 59 | + |
| 60 | +Duration of mouse movements within Action Chains |
| 61 | +------------------------------------------------ |
| 62 | +Actions chains allow for building up a series of interactions including mouse movements. As to simulate an acutal |
| 63 | +user moving the mouse a default duration (250ms) for pointer movements is set. This change (`#1768`_) allows for |
| 64 | +the action chain duration to be modified. This can be done on the Library import, as in, |
| 65 | + |
| 66 | +.. sourcecode:: robotframework |
| 67 | + |
| 68 | + *** Setting *** |
| 69 | + Library SeleniumLibrary action_chain_delay=100 milliseconds |
| 70 | + |
| 71 | +or with the setter keyword ``Set Action Chain Delay``. In addition one can get the current duretion with the |
| 72 | +new keyword ``Get Action Chain Delay``. See the keyword documentation for more information. |
| 73 | + |
| 74 | +Timeout documentation updated |
| 75 | +----------------------------- |
| 76 | +The keyword documentation around timeouts was enhanced (`#1738`_) to clarify what the default timeout is |
| 77 | +and that the default is used if ``None`` is specified. The changes are, as shown in **bold**, |
| 78 | + |
| 79 | + The default timeout these keywords use can be set globally either by using the Set Selenium Timeout |
| 80 | + keyword or with the timeout argument when importing the library. **If no default timeout is set |
| 81 | + globally, the default is 5 seconds. If None is specified for the timeout argument in the keywords, |
| 82 | + the default is used.** See time format below for supported timeout syntax. |
| 83 | + |
| 84 | +Edge webdriver under Linux |
| 85 | +-------------------------- |
| 86 | +The executable path to the edge browser has been changed (`#1698`_) so as to support both Windows and |
| 87 | +Linux/Unix/MacOS OSes. One should not notice any difference under Windows but under Linux/*nix one will |
| 88 | +no longer get an error message saying the Windows executable is missing. |
| 89 | +
|
| 90 | +Bug fixes |
| 91 | +========= |
| 92 | + |
| 93 | +``None`` argument not correctly converted |
| 94 | +----------------------------------------- |
| 95 | +There were some issues when using ``None`` as a parameter under certain arguments within the |
| 96 | +SeleniumLibrary(`#1733`_). This was due to the type hinting and argument conversions. The underlying |
| 97 | +issue was resolved within the PythonLibCore to which we have upgraded to PythonLibCore v3.0.0. |
| 98 | + |
| 99 | +Deprecated features |
| 100 | +=================== |
| 101 | + |
| 102 | +- Support for the Opera browser was removed from the underlying Selenium Python |
| 103 | + bindings and thus we have removed the deprecated opera support. (`#1786`_) |
| 104 | +- *Internal Only:* The library's acceptance tests removed a deprecated rebot |
| 105 | + option. (`#1793`_) |
| 106 | + |
| 107 | +Upcoming Depreciation of Selenium2Library |
| 108 | +========================================= |
| 109 | + |
| 110 | +**Please Take Note** - The SeleniumLibrary Team will be depreciating and removing the Selenium2Library |
| 111 | +package in an upcoming release. When the underlying Selenium project transitioned, over six years ago, |
| 112 | +from distinguishing between the "old" selenium (Selenium 1) and the "new" WebDriver Selenium 2 into |
| 113 | +a numerically increasing versioning, this project decided to use the original SeleniumLibrary package |
| 114 | +name. As a convenience the Selenium2Library package was made a wrapper around the SeleniumLibrary |
| 115 | +package. Due to the issues around upgrading packages and the simple passage of time, it is time to |
| 116 | +depreciate and remove the Selenium2Library package. |
| 117 | + |
| 118 | +*If you are still installing the Selenium2Libary package please transition over, as soon as possible, |
| 119 | +to installing the SeleniumLibrary package instead.* |
| 120 | + |
| 121 | +Acknowledgements |
| 122 | +================ |
| 123 | + |
| 124 | +- `@0xLeon <https://github.com/0xLeon>`_ for suggesting and |
| 125 | + `@robinmatz <https://github.com/robinmatz>`_ for enhancing the page |
| 126 | + load timeout; adding an API to set page load timeout. (`#1535`_) |
| 127 | +- `@johnpp143 <https://github.com/johnpp143>`_ for reporting the action chains timeout |
| 128 | + as fixed and unchangeable. `@rasjani <https://github.com/rasjani>`_ for enhancing |
| 129 | + the library import and adding keywords allowing for user to set the Action Chain's |
| 130 | + duration. (`#1768`_) |
| 131 | +- `Dave Martin <https://github.com/sparkymartin>`_ for enhancing the documentation |
| 132 | + around Timeouts. (`#1738`_) |
| 133 | +- `@tminakov <https://github.com/tminakov>`_ for pointing out the issue around the |
| 134 | + None type and `Tato Aalto <https://github.com/aaltat>`_ and `Pekka Klärck <https://github.com/pekkaklarck>`_ |
| 135 | + for enhancing the core and PLC resolving an issue with types. (`#1733`_) |
| 136 | +- `@remontees <https://github.com/remontees>`_ for adding support for Edge webdriver under Linux. (`#1698`_) |
| 137 | +- `Lassi Heikkinen <https://github.com/Brownies>`_ for assisting in removing deprecated |
| 138 | + opera support (`#1786`_), for enhancing the acceptance tests (`#1788`_), for |
| 139 | + fixing the tests on firefox (`#1808`_), and for removing the deprecated rebot option (`#1793`_). |
| 140 | +- `@dotlambda <https://github.com/dotlambda>`_ for pointing out that the |
| 141 | + RemoteDriverServerException was removed from Selenium (`#1804`_) |
| 142 | +- `@DetachHead <https://github.com/DetachHead>`_ for fixing `StringIO` import as it was |
| 143 | + removed in robot 5.0 (`#1753`_) |
| 144 | + |
| 145 | +In addition to the acknowledgements above I want to personally thank **Jani Mikkonen** as a co-maintainer of |
| 146 | +the SeleniumLibrary and all the support he has given over the years. I also want to thank **Tatu Aalto** for |
| 147 | +his continued support and guidance of and advice concerning the SeleniumLibrary. Despite "leaving" the |
| 148 | +project, he still is actively helping me to which I again say Kiitos! As I talked about in our Keynote |
| 149 | +talk at RoboCon 2023 I have been working on building up the SeleniumLibrary team. I want to acknowledge |
| 150 | +the following people who have stepped up and have been starting to take a larger development and |
| 151 | +leadership role with the SeleniumLibrary, |
| 152 | + |
| 153 | +**Lassi Heikkinen, Lisa Crispin, Yuri Verweij, and Robin Matz** |
| 154 | + |
| 155 | +Their active participation has made this library significantly better and I appreciate their contributions |
| 156 | +and participation. -- `Ed Manlove <https://github.com/emanlove>`_ |
| 157 | + |
| 158 | +Full list of fixes and enhancements |
| 159 | +=================================== |
| 160 | + |
| 161 | +.. list-table:: |
| 162 | + :header-rows: 1 |
| 163 | + |
| 164 | + * - ID |
| 165 | + - Type |
| 166 | + - Priority |
| 167 | + - Summary |
| 168 | + * - `#1733`_ |
| 169 | + - bug |
| 170 | + - high |
| 171 | + - The Wait Until * keywords don't support a None value for the error parameter |
| 172 | + * - `#1535`_ |
| 173 | + - enhancement |
| 174 | + - high |
| 175 | + - Add API to set page load timeout |
| 176 | + * - `#1698`_ |
| 177 | + - enhancement |
| 178 | + - high |
| 179 | + - Update webdrivertools.py |
| 180 | + * - `#1738`_ |
| 181 | + - enhancement |
| 182 | + - high |
| 183 | + - Suggestion for clarifying documentation around Timeouts |
| 184 | + * - `#1768`_ |
| 185 | + - enhancement |
| 186 | + - high |
| 187 | + - Keywords which uses action chains are having a default 250ms timeout which cannot be overriden. |
| 188 | + * - `#1786`_ |
| 189 | + - --- |
| 190 | + - high |
| 191 | + - Remove deprecated opera support |
| 192 | + * - `#1785`_ |
| 193 | + - bug |
| 194 | + - medium |
| 195 | + - Review Page Should Contain documentation |
| 196 | + * - `#1796`_ |
| 197 | + - bug |
| 198 | + - medium |
| 199 | + - atest task loses python interpreter when running with virtualenv under Windows |
| 200 | + * - `#1788`_ |
| 201 | + - enhancement |
| 202 | + - medium |
| 203 | + - Acceptance tests: rebot option `--noncritical` is deprecated since RF 4 |
| 204 | + * - `#1795`_ |
| 205 | + - enhancement |
| 206 | + - medium |
| 207 | + - Microsoft edge webdriver |
| 208 | + * - `#1808`_ |
| 209 | + - enhancement |
| 210 | + - medium |
| 211 | + - Fix tests on firefox |
| 212 | + * - `#1789`_ |
| 213 | + - --- |
| 214 | + - medium |
| 215 | + - Review workaround for selenium3 bug tests |
| 216 | + * - `#1804`_ |
| 217 | + - --- |
| 218 | + - medium |
| 219 | + - RemoteDriverServerException was removed from Selenium |
| 220 | + * - `#1794`_ |
| 221 | + - bug |
| 222 | + - low |
| 223 | + - Documentation timing |
| 224 | + * - `#1806`_ |
| 225 | + - enhancement |
| 226 | + - low |
| 227 | + - Remove remote driver server exception |
| 228 | + * - `#1807`_ |
| 229 | + - enhancement |
| 230 | + - low |
| 231 | + - Rf v5 v6 |
| 232 | + * - `#1815`_ |
| 233 | + - enhancement |
| 234 | + - low |
| 235 | + - Updated `Test Get Cookie Keyword Logging` with Samesite attribute |
| 236 | + * - `#1753`_ |
| 237 | + - --- |
| 238 | + - low |
| 239 | + - fix `StringIO` import as it was removed in robot 5.0 |
| 240 | + * - `#1793`_ |
| 241 | + - --- |
| 242 | + - low |
| 243 | + - Remove deprecated rebot option |
| 244 | + |
| 245 | +Altogether 19 issues. View on the `issue tracker <https://github.com/robotframework/SeleniumLibrary/issues?q=milestone%3Av6.1.0>`__. |
| 246 | + |
| 247 | +.. _#1733: https://github.com/robotframework/SeleniumLibrary/issues/1733 |
| 248 | +.. _#1535: https://github.com/robotframework/SeleniumLibrary/issues/1535 |
| 249 | +.. _#1698: https://github.com/robotframework/SeleniumLibrary/issues/1698 |
| 250 | +.. _#1738: https://github.com/robotframework/SeleniumLibrary/issues/1738 |
| 251 | +.. _#1768: https://github.com/robotframework/SeleniumLibrary/issues/1768 |
| 252 | +.. _#1786: https://github.com/robotframework/SeleniumLibrary/issues/1786 |
| 253 | +.. _#1785: https://github.com/robotframework/SeleniumLibrary/issues/1785 |
| 254 | +.. _#1796: https://github.com/robotframework/SeleniumLibrary/issues/1796 |
| 255 | +.. _#1788: https://github.com/robotframework/SeleniumLibrary/issues/1788 |
| 256 | +.. _#1795: https://github.com/robotframework/SeleniumLibrary/issues/1795 |
| 257 | +.. _#1808: https://github.com/robotframework/SeleniumLibrary/issues/1808 |
| 258 | +.. _#1789: https://github.com/robotframework/SeleniumLibrary/issues/1789 |
| 259 | +.. _#1804: https://github.com/robotframework/SeleniumLibrary/issues/1804 |
| 260 | +.. _#1794: https://github.com/robotframework/SeleniumLibrary/issues/1794 |
| 261 | +.. _#1806: https://github.com/robotframework/SeleniumLibrary/issues/1806 |
| 262 | +.. _#1807: https://github.com/robotframework/SeleniumLibrary/issues/1807 |
| 263 | +.. _#1815: https://github.com/robotframework/SeleniumLibrary/issues/1815 |
| 264 | +.. _#1753: https://github.com/robotframework/SeleniumLibrary/issues/1753 |
| 265 | +.. _#1793: https://github.com/robotframework/SeleniumLibrary/issues/1793 |
0 commit comments