Skip to content
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

Use Playwright for integration tests #2077

Open
Conengmo opened this issue Jan 6, 2025 · 3 comments
Open

Use Playwright for integration tests #2077

Conengmo opened this issue Jan 6, 2025 · 3 comments

Comments

@Conengmo
Copy link
Member

Conengmo commented Jan 6, 2025

We currently use Selenium to test the examples in our documentation for errors. This is useful, but it doesn't catch features silently failing. This happened in our v0.19.0 release.

We need tests that actually verify the expected elements are visible on the page. This requires work: for each example we have to define what elements are expected, possibly after clicking on some other element.

I'd like to try to use Playwright for this. It looks pretty easy to use. It also integrates with Pytest. I'll give this a shot on a couple examples to see if this approach works well. If so, we can apply it to all examples.

@hansthen
Copy link
Collaborator

hansthen commented Jan 6, 2025

Great idea! I really like Playwright. I have a little experience with it when working on streamlit-folium. A very simple (and lazy) idea could be to clone and run the streamlit-folium tests.

@Conengmo
Copy link
Member Author

Conengmo commented Jan 6, 2025

I think you suggested it to me :) I’ll take a look at those streamlit tests!

@hansthen
Copy link
Collaborator

hansthen commented Jan 9, 2025

What would you think of making a sample streamlit app (next to the demo pages generated by jupyter notebook)? We can use this for automated tests, but we can also use it to demo some of the more interactive functionality. If you are open for it can also have a chat / video call with the team behind streamlit-folium to see if we can cooperate better.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants