Seleniumpm

Latest version: v2.13.0

Safety actively analyzes 629678 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

2.11.0

-------------------

**New Features:**

- Adding a get_html() capability to return back either an entire page or the inner-html of a specific element. This is implemented on a Webpage, an IFrame, and Element types.
- Adding a wait_for_iframe_load() to IFrame type
- Added stop-watch capabilities (e.g. start, stop, split) to a Webpage and Element types. In addition, a basic page load timer has been implemented. Basically, every wait_for_page_load() and wait_for_iframe_load() will calculate a duration time automatically.
- Removed requirement that a Widget/Panel/IFrame type must define a Locator. This is to support situations where a developer doesn't want to validate the location of the Widget, but instead just wants to validate the objects that are within a Widget. This is similar to a Webpage validation.

**Fixed:**

- Fixed scenario for __getattr__ where a developer could decorate a method with property, and thus could execute code that results in an Error/Exception.
- Added try/finally block to the validate() operation on an IFrame. This is to handle the situation when a sub-webpage (a.k.a. an iFrame) fails a validation; in this situation, we want to make sure that we allow going back to the top-level-webpage in the event of a Error.

2.10.0

-------------------

**New Features:**

- Added a get_attribute_contains() and a get_attribute_is() on Element type. The intention is to implement an all-in-one solution for both retrieving an attribute and validating whether something contains or is something. This operation is useful for dynamic elements that use css classes for changing the state of a page (e.g. <div class='svgOverviewView-status-icon fa fa-exclamation-triangle svg-status-warning'>); One could define a generic reference to this element, and then use get_attribute_contains() to check if it now contains 'fa-exclamation-triangle' css class.
- Implementation of seleniumpm.config module. This module can be imported via *import seleniumpm.config as seleniumconfig*; and variables can be changed like so: *seleniumconfig.page_timeout_in_sec = 60*
- Added a global *element_timeout_in_ms* and *page_timeout_in_ms* to seleniumpm.config module. Defaults are still 10s for element timeout and 30s for page timeout.
- Added a global *debug_logging_function* to selenium.config module
- Added a refresh() operation on a Webpage (a.k.a. a page refresh). This of course is simply a driver.refresh() operation on an opened page.
- Added a get_current_url() operation on a Webpage
- Added get_number(), get_numbers(), get_int(), and get_float() to an Element. This is so that you can quickly and easily get numbers from element(s) text that represent numbers
- Added an "access element" abstraction layer so that you can retrieve any element defined any levels deep (e.g. A button defined within a Panel that is under an IFrame). The idea is simple: If I want to click a button 2-levels-deep, this can be done either by (1) page.iframe.panel1.login_button.click(), or (2) directly from the top-level page as if it was a local attribute via page.login_button.click()
- Added take_screenshot() feature to both a Webpage and Element types.
- Added a take_screenshot_on_test_error annotation for annotating tests. The screenshot capability for a test is controlled by *seleniumpm.config.test_screenshot_enabled* and is set to True by default.
- Added pretty-print way of visualizing all attributes and methods for a Webpage. This is useful for documentation as well as for debugging

**Fixed:**

- Fixing issue with get_attribute() on Element. This method did not have an expected return statement

2.9.1

------------------

**New Features:**

**Fixed:**

- Fixing missing implementation to do proper validation of an IFrame that is embedded on a Webpage

2.9.0

------------------

**New Features:**

- Implement a get_texts() which returns back all the text (in a List) given a locator. This is available for all Element types
- Implement hover_over() capability to Element

**Fixed:**

- Fixed several critical issues related to get_element_attr(), validate(), and wait_for_page_load() operations on both a Webpage and Widget types
- Add more unittests for IFrame
- Fix wait_for_present_and_visible() timeout for the check for visibility. There are scenarios in which an element may be present, but not immediately visible

2.8.0

------------------

**New Features:**

- Adding click() operations to a Widget. This is to support the fact that sometimes an entire section of a page can be "clickable"
- Adding new IFrame type

**Fixed:**

- Fixing issue with get_element_attr() method on both a Widget and a Webpage. The problem was that if you marked Widget type as do_not_check, then it should respect both the Widget and all of its embedded elements. The issue was that it would respect that the Widget was marked as do_not_check, but would still enumerate over all of its sub-elements.
- Fixing another issue with get_element_attr() method on both a Widget and a Webpage. The problem was related to Widget's that are marked "invisible". Similar to do_not_check, sub-elements should not be checked if the top-level Widget is already "invisible".

2.7.2

------------------

**New Features:**

**Fixed:**

- Both Webpage and Widget validate() methods should return self
- Fixing force_check_visibility parameter in Webpage.wait_for_page_load(). The default was set to True instead of False

Page 3 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.