-
Notifications
You must be signed in to change notification settings - Fork 388
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add playwright based UI integration tests for existing UI #1891
Conversation
8a5e565
to
9a5f4f3
Compare
Allows using this in integration tests
- Add a new 'integration-tests' directory that does white box UI testing - Install dockerspawner in dev-requirements, as the playwright integration tests now need it - Move loading and about page tests to use playwright - Add some tests for the home page - Use a single instance of local-binder-local-hub for doing thes integration tests - Upload playwright traces (https://playwright.dev/python/docs/trace-viewer) on failure so we can debug things better Co-authored-by: Oliver Roick <[email protected]>
9a5f4f3
to
c41c7c0
Compare
|
||
|
||
def pytest_configure(config): | ||
# Required for playwright to be run from within pytest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The alternative to this is to use async tests with the playwright async API. That's what we use in the jupyterhub tests.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice! I won't merge myself because I don't know how this will interact with #1856, but feel free to go ahead.
jupyterhub/binderhub#1891 Merge pull request #1891 from yuvipanda/binderhub-local
Primarily written to make UI testing easier in #1856, and
steals code from there
UI testing
integration tests now need it
integration tests
on failure as a github artifact so we can debug things better
test_main.py
, so we can get rid of it as part of Rewrite the frontend #1856