I'd like to use the PageObject pattern, but not necessarily use Selenium.
The reason for this is, that when I use Django I have the test client available for headless operation. In other words, I do not operate a Web browser but just the Django application instead. That's enough for getting the templates rendered, so that I can evaluate the page content (which speeds up test execution significantly).
You could allow Selenium to be install via extras, as described in the Python Packaging Guide, e.g.
$ python3 -m pip install page-object[selenium]
This, without the "extra features" in square brackets page-object would just install the minimum functionality that I require, e.g.
$ python3 -m pip install page-object
which would, for obvious reasons, speed up test execution in CI pipelines or when using Tox.
I'd like to use the PageObject pattern, but not necessarily use Selenium.
The reason for this is, that when I use Django I have the test client available for headless operation. In other words, I do not operate a Web browser but just the Django application instead. That's enough for getting the templates rendered, so that I can evaluate the page content (which speeds up test execution significantly).
You could allow Selenium to be install via
extras, as described in the Python Packaging Guide, e.g.$ python3 -m pip install page-object[selenium]This, without the "extra features" in square brackets
page-objectwould just install the minimum functionality that I require, e.g.$ python3 -m pip install page-objectwhich would, for obvious reasons, speed up test execution in CI pipelines or when using Tox.