Hello everyone,
the previous Horizon tests were unstable, hard to maintain, slow in execution. Before completely rewriting the tests we were experimenting and discussing what way to go with the goal to try to find the best way to make the tests stable, easy to maintain and fast. And Using PyTest with all the features it provides - Fixtures, scopings, parameterizations, etc. Rich plugin ecosystem like pytest-html for generating test reports. Basically cover the Horizon well, using modern ways and not reinvent the wheel again.
To be completely honest - I implemented the majority of the new tests for Horizon and I did not know that PyTest is not allowed to be used. If I knew about it I would definitely have discussed it with someone (TC) before.
I see PyTest as a very popular, widely used, and feature-rich open-source framework. In my point of view PyTest is the modern, de facto standard/industry-adopted for testing in the Python ecosystem - That is the reason why I am so surprised that after reimplementation of all Horizon tests (that are now, after years, super stable, easy to maintain and running well for multiple cycles already) and started with coverage for Manila-UI plugin, it came out on PTG from watcher team that it is probably not Allowed to use PyTest in OpenStack project.
So to answer the Goutham part - We (Horizon team) see it as a way to write and maintain tests easier and in a modern way.
Who was on our Horizon PTG where we discussed/presented part of plugin coverage knows that we are also trying to make the base (elementary fixtures) reusable for all the other projects so they can just import a few elementary fixtures and build tests for their plugins on the top of it how they want with significantly less effort.
If something is not okay, I am responsible for this in the Horizon team. And as I said, I did not know it, I did it in the best will and of course I am open to discussion.
Thank you!
Jan