Skip to main content

A high-level web testing library based on Selenium and PageObject Pattern

Project description

Bromine is a high-level web testing Python library based on Selenium and PageObject Pattern.

It's purpose is to provide a conceptual framework to model the system under test.

To write actual tests you'll keep using your testing framework of choice.

Bromine focuses on end-to-end tests: it relies on Selenium to exercise a real system, not to simulate it.

While Selenium serves as the essential foundation enabling end-to-end testing, WebDriver alone offers too low a level of abstraction.
When we describe some behaviour that our system must exhibit, we usually think about how users interact with the UI and how this one is expected to respond to those interactions. We do not think about the browser as the main actor, but indeed as part of the application. In the context of Object-Oriented Programming, as developers we tend to reason in terms of UI objects interacting with the user or with other parts of the system.
Given this perspective shift, Bromine adopts PageObject Pattern as its cornerstone.

The three basic building blocks of Bromine's conceptual model are WebApplication, WebPage and WebElement.

WebElements are responsible for locating and automatically refreshing themselves relieving the programmer of the burden of explicitly handling Selenium's StaleElementExceptions.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

bromine-0.4.0-py2.py3-none-any.whl (19.0 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file bromine-0.4.0-py2.py3-none-any.whl.

File metadata

  • Download URL: bromine-0.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 19.0 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.5

File hashes

Hashes for bromine-0.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 88792a4820ecff516eb634e22c027fc74641769203ed5899eba2fed8a398069b
MD5 c6159dfefe9d7384f7182abce37a0650
BLAKE2b-256 89f96abea47295f9ea0ebcec59d12b38f0daca1b96246fa504a8f80b7f5c74d7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page