<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Wed, Oct 7, 2015 at 12:51 AM Monty Taylor <<a href="mailto:mordred@inaugust.com">mordred@inaugust.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 10/06/2015 10:52 AM, Sebastian Kalinowski wrote:<br>
> I've already wrote in the review that caused this thread that I do not want<br>
> to blindly follow rules for using one or another. We should always consider<br>
> technical requirements. And I do not see a reason to leave py.test (and<br>
> nobody<br>
> show me such reason) and replace it with something else.<br>
<br>
Hi!<br>
<br>
The reason is that testrepository is what OpenStack uses and as I<br>
understand it, Fuel wants to join the Big Tent.<br></blockquote><div><br></div><div>It saddens me that once again choice of library is being forced upon a project based on what other projects use, not on technical merit. py.test is more than just a (way better) test runner, it allows to write tests with less boilerplate and more power. While its features are not extensively used in Fuel code, switching to testr would still require changing test logic which is generally bad (that's why mox is still in use in OpenStack). Can we avoid that?</div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">The use of testr is documented in the Project Testing Interface:<br>
<br>
<a href="http://git.openstack.org/cgit/openstack/governance/tree/reference/project-testing-interface.rst#n78" rel="noreferrer" target="_blank">http://git.openstack.org/cgit/openstack/governance/tree/reference/project-testing-interface.rst#n78</a><br>
<br>
There are many reasons for it, but in large part we are continually<br>
adding more and more tools to process subunit output across the board in<br>
the Gate. subunit2sql is an important one, as it will be feeding into<br>
expanded test result dashboards.<br>
<br>
We also have zuul features in the pipeline to be able to watch the<br>
subunit streams in real time to respond more quickly to issues in test runs.<br></blockquote><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">We also have standard job builders based around tox and testr. Having<br>
project divergence in this area is a non-starter when there are over 800<br>
repositories.<br></blockquote><div><div><br class="Apple-interchange-newline">So it seems that all that's needed to keep py.test as an option is a plugin for py.test that generates subunit stream like Robert said, is that right?</div></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">In short, while I understand that this seems like an area where a<br>
project can do whatever it wants to, it really isn't. If it's causing<br>
you excessive pain, I recommend connecting with Robert on ways to make<br>
improvements to testrepository. Those improvements will also have the</blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
effect of improving life for the rest of OpenStack, which is also a<br>
great reason why we all use the same tools rather than foster an<br>
environment of per-project snowflakes.<br></blockquote><div><br></div><div>I wouldn't call py.test a snowflake. It's a very well-established testing tool and OpenStack projects could benefit from using it if we integrate it with testr well.</div></div></div>