Hide navigation sidebar
Hide table of contents sidebar
Skip to content
Back to top
View this page
Toggle table of contents sidebar

# Testfixtures

CircleCI Docs

Testfixtures is a collection of helpers and mock objects that are useful when writing automated tests in Python.

The areas of testing this package can help with are listed below:

Comparing objects and sequences

Better feedback when the results aren’t as you expected along with support for comparison of objects that don’t normally support comparison and comparison of deeply nested datastructures.

Mocking out objects and methods

Easy to use ways of stubbing out objects, classes or individual methods. Specialised helpers and mock objects are provided, including sub-processes, dates and times.

Testing logging

Helpers for capturing logging and checking what has been logged is what was expected.

Testing stream output

Helpers for capturing stream output, such as that from print function calls or even stuff written directly to file descriptors, and making assertions about it.

Testing with files and directories

Support for creating and checking both files and directories in sandboxes including support for other common path libraries.

Testing exceptions and warnings

Easy to use ways of checking that a certain exception is raised, or a warning is issued, even down the to the parameters provided.

Testing when using django

Helpers for comparing instances of django models.

Testing when using Twisted

Helpers for making assertions about logging when using Twisted.

The sections below describe the use of the various tools included:

- Comparing objects and sequences
- Mocking out objects and methods
- Mocking dates and times
- Testing logging
- Testing output to streams
- Testing with files and directories
- Testing exceptions
- Testing warnings
- Testing subprocesses
- Testing with Django
- Testing with Twisted
- Utilities

If you’re looking for a description of a particular tool, please see the API reference:

- API Reference

For details of how to install the package or get involved in its development, please see the sections below:

- Installation Instructions
- Development
- Changes

# Indices and tables

- Index

- Module Index

- Search Page