Hitch¶
Hitch is a framework for Integration Testing.
Features¶
- Runs reliably without modification on Mac OS X, Ubuntu/Debian, Fedora, CentOS and Arch and in Docker.
- Automates its own deployment and does not interfere with your system other than to install packages.
- Provides boilerplate and tools to substantially minimize the problem of Brittle Tests.
- Readable Hitch Test Description Language that doesn’t require you to write regular expressions.
- Built-in Service Orchestration library for running groups of services (databases, webservers, microservices) together.
- Built-in Step Library for common tasks (interacting with browsers, command line & emails).
- Provides a suitable environment for Acceptance Test Driven Development complete with debugging tools.
Plugins¶
Documentation¶
- Getting started quickly with Hitch
- How to
- How to do Acceptance Test Driven Development with Hitch
- How to do Behavior Driven Development with Hitch
- How to test command line applications
- How to use Hitch with Continuous Integration
- How to debug a test failure
- How to test applications which call external APIs
- How to Parameterize your Test Cases with Hitch
- How to refactor your tests
- How to develop effectively with slow tests
- How to do test driven development with hitch
- How to upgrade Hitch
- How to test web applications
- Frequently Asked Questions
- How do I uninstall hitch completely?
- How does Hitch compare to other technologies?
- How is Hitch extensible?
- Easy step definition
- Loose
/glossary/coupling
- Installed from PyPi into a Virtualenv
- What about python 2?
- What does hitch init do?
- What does the hitch bootstrap script do?
- What does the init script do?
- What kind of debugging tools ship with Hitch?
- The IPython REPL
- Log Catting and Tailing
- When should I use a high level test and when should I use a low level test?
- When should I use a unit test and when should I use an integration test?
- Why do Hitch tests download and compile software I already have installed?
- Why does the first test run take so long?
- Why install Hitch on the system path?
- Why is hitch so fast?
- Why is my test downloading and compiling software?
- Why should web application tests only interact with HTML IDs and HTML classes?
- Why does Hitch not enforce the use of Given/When/Then?
- Why should Hitch run my database?
- Why should my tests set up their own python environments?
- Why was hitch behavior changed?
- Why YAML?
- Hitch API
- Miscellaneous
See the full Glossary here.