Awesome Streamlit Test Runner Announced

I’ve created an Awesome Streamlit Test Runner because I now have a lot of examples in the Awesome Streamlit Gallery at

https://awesome-streamlit.org/.

Right now it tests a fixed set of one file apps. Primarely apps on the Streamlit Github page. But also some I’ve created and some I’ve collected from the community.

If you have the awesome-streamlit repo up and running as described in the README.md then you can run the test runner using


streamlit run test_runner_app.py

You can also just try it using Docker


docker run -it -p 80:80 --entrypoint "streamlit" marcskovmadsen/awesome-streamlit:latest run test_runner_app.py

Very cool!

Some questions / ideas:

  1. Does it run normal pytest unit tests?
  2. You could use a Styler object to make the “failed”/“passed” text red/green :smiley:
  3. Do you have a link to the code?

Thanks about the coolness :smile:

  1. No. I like and trust pytest very much as most people do. So if I can run something with pytest I will keep it there.

But for now I don’t know how exactly how to test streamlit and since I expanded the Gallery I wanted to make sure all files/ app shown can actually run without problems. So I developed this. Afterwards I thought. But hey! You’ve just implemented something like karma. I don’t actually like karma. And I was actually quite pleased that this has the potential to become much better and more awesome.

How do you test a single page app? And where can I find examples or documentation.

Then I also thought. But hey! This could maybe actually end up as a plugin to pytest. Both with functionality to test streamlit. But also as a GUI for better navigating and viewing the pytest output.

  1. Yes. Two people one thought. I’ve just not used the styler before, but I eventually should. Could be so awesome.

  2. https://github.com/MarcSkovMadsen/awesome-streamlit/blob/master/test_runner_app.py

Maybe this link will changed. This was a simple first version that might be refactored, matured and generalized.

You can see the awesome-streamlit test runner as an idea that you are welcome to take and run with for streamlit. But if you do please note that I get energy and more ideas from being credited somehow :slight_smile:

And I think the test runner is a testemony to how awesome Streamlit is. And not just for AI.

I’ve never ever been able to build something like that in Python before. And in Django/ Angular that I’m currently developing in it would have taken forever.

1 Like