<div dir="ltr"><div><div>Hi Albert-Jan,<br><br></div>Thanks for your question! That's precisely it: nose-knows figures out which subsets of your test suite to run whenever a specific source file changes. This is useful for systems that have the following two conditions:<br>
<br>1. complex code base<br>2. long running unit tests<br><br></div><div>Having a complex code base means that it is challenging to ascertain which unit tests need to run besides the one in that package; having long running unit tests means that you can't continuously be running all of the unit tests whenever any file changes, as the feedback loop is simply too long time-wise.<br>
<br></div><div>Nose-knows does not do the "watch for file changes and re-run your tests" part, because you can hook up nose-knows to things like nosy /nosier / PyZen / etc.<br><br></div><div>Thanks!<br><br></div>
<div>Eyal<br></div><br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Apr 16, 2014 at 11:53 PM, Albert-Jan Roskam <span dir="ltr"><<a href="mailto:fomcl@yahoo.com" target="_blank">fomcl@yahoo.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
<br>
<br>
<br>
Regards,<br>
<br>
Albert-Jan<br>
<br>
<br>
<br>
<br>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br>
<br>
All right, but apart from the sanitation, the medicine, education, wine, public order, irrigation, roads, a<br>
<br>
fresh water system, and public health, what have the Romans ever done for us?<br>
<br>
<br>
_______________________________<br>
> From: Eyal Reuveni <<a href="mailto:eyal@eventbrite.com">eyal@eventbrite.com</a>><br>
>To: <a href="mailto:testing-in-python@lists.idyll.org">testing-in-python@lists.idyll.org</a><br>
>Sent: Wednesday, April 16, 2014 7:02 PM<br>
>Subject: [TIP] Shameless nose plugin plug: nose-knows<br>
<div><div class="h5">><br>
>Hey all,<br>
><br>
>I wrote a nose plugin a while back that tracks which unit tests hit which files, allowing you to figure out which tests to run once you've modified a file.<br>
><br>
>It's open source, it's pretty simple, and I hope you find it useful!<br>
><br>
><a href="https://github.com/eventbrite/nose-knows" target="_blank">https://github.com/eventbrite/nose-knows</a><br>
><br>
><a href="https://engineering.eventbrite.com/smarter-unit-testing-with-nose-knows/" target="_blank">https://engineering.eventbrite.com/smarter-unit-testing-with-nose-knows/</a><br>
><br>
><a href="https://pypi.python.org/pypi/nose-knows/0.1.1" target="_blank">https://pypi.python.org/pypi/nose-knows/0.1.1</a><br>
><br>
>Please let me know if you have questions or want to contribute!<br>
<br>
</div></div>Hi,<br>
<br>
Interesting. Is it different from the 'nosy' package in that it only runs tests that are associated with modified parts of the source code? In other words: only a subset of the unit tests are run? Nosy: "Run the nose test discovery and execution tool whenever a source file is changed. An elaborated version of Jeff Winkler's nosy tool that runs nose whenever a source file is changed. This version has a command line parser added, and the capability to use a configuration file to control what files are watched, and how nose runs." [<a href="https://pypi.python.org/pypi/nosy" target="_blank">https://pypi.python.org/pypi/nosy</a>]<br>
<br>
regards,<br>
Albert-Jan<br>
</blockquote></div><br></div>