Added the Hitch integration testing framework.#427
Added the Hitch integration testing framework.#427crdoconnor wants to merge 2 commits intovinta:masterfrom
Conversation
|
👍 |
|
@crdoconnor @osantana I'm not familiar with |
|
It's a high level integration testing framework. While unit testing frameworks like py.test are ideally suited to testing logical code (sorting lists, finding anagrams, matrix calculations, financial calculations), I find they're lacking for situations which involve integration code - especially high level end to end tests - e.g. testing a web app that talks to lots of different systems - databases, SMTP servers, message queues, etc. Hitch shines in this area. Hitch provides the boilerplate to let you write clear, readable, reliable tests for these scenarios and minimize the problem of "brittle and slow" end to end tests. Some example features:
|
|
@crdoconnor looks like you are the author and this now looks like self-promotion. Who can prove your words that Hitch is awesome? Who is using it in production? |
|
Yeah I am and it is. I assumed that was ok. Nothing in CONTRIBUTING says otherwise. It's still a pretty new thing and I haven't done much promotion yet so the number of users isn't enormous. No risk-averse big corporations that I know of yet, for instance. It's integrated into cookiecutter-django and gets used via that though. I have customers who use it too. I assume at least some of the people who starred it on github are also using it. |
|
Promotion doesn't matter. You product doesn't have reviews and you're biased towards it, so it is hard to say if it is awesome. It may have an awesome ideas undercover, but buggy as hell on Python 3 like my libraries, for example. |
|
It was unstable when I issued the pull request 2 months ago and quality-wise it won't be production-hardened for probably another ~2-3 months. It's beta quality, currently. If that disqualifies it for inclusion, let me know. I'll re-open the PR once it's hardened. I have a dogfooded regression test suite for the framework which I run regularly on Mac OS Yosemite, Ubuntu, Debian, Fedora, Arch and 3 different versions of python 3. I'd recommend trying it to get a flavor of what it's capable of (and to ascertain its bugginess or lack thereof). You can do so by installing the bootstrapper:: And then check out and run the example project:: (Ensure brew, firefox and node-less are all pre-installed if using Mac OS X) You can also try it out with cookiecutter-django, where it runs an example test:: If you can think of pythonistas whose opinion you'd trust who might be interested in trying out this new approach to testing, please let me know. |
|
I am on Windows, sorry. |
|
This list is not just a list of all ideas and frameworks that people came up with, because Python is awesome. This list is for tools that are awesome for Python. So far I don't see any formal proof that Hitch is awesome - it is marked as an alpha quality, doesn't have clearly expressed architecture depicted on diagram, not cross-platform, doesn't have any public users and public installations. Everything it has as a proof is a authors' opinion and prebaked demo video. I don't want to disappoint you - the Hitch may be awesome, but I don't have enough time to be your tester. |
|
And also AGPL is a bad license choice if your code contains Python libs that are meant to be imported for setting the harness. |
No description provided.