Skip to main content

A test framework for Python that makes mocking and iterating over code with tests a breeze

Project description

TestSlide: Fluent Python Testing

Build Status Documentation Status GitHub license PyPI version Code style: black

TestSlide makes writing tests fluid and easy. Whether you prefer classic unit testing, TDD or BDD, it helps you be productive, with its easy to use well behaved mocks and its awesome test runner.

It is designed to work well with other test frameworks, so you can use it on top of existing unittest.TestCase without rewriting everything.



pip install TestSlide

Scaffold the code you want to test

class Backup(object):
  def delete(self, path):

Write a test case describing the expected behavior:

import testslide, backup, storage

class TestBackupDelete(testslide.TestCase):
  def setUp(self):
    self.storage_mock = testslide.StrictMock(storage.Client)
    # Makes storage.Client(timeout=60) return self.storage_mock
    self.mock_constructor(storage, 'Client')\

  def test_delete_from_storage(self):
    # Set behavior and assertion for the call at the mock
    self.mock_callable(self.storage_mock, 'delete')\

TestSlide's StrictMock, mock_constructor() and mock_callable() are seamlessly integrated with Python's TestCase.

Run the test and see the failure:

Failing test

TestSlide's mocks failure messages guide you towards the solution, that you can now implement:

import storage

class Backup(object):
  def __init__(self): = storage.Client(timeout=60)

  def delete(self, path):

And watch the test go green:

Passing test

It is all about letting the failure messages guide you towards the solution. There's a plethora of validation inside TestSlide's mocks, so you can trust they will help you iterate quickly when writing code and also cover you when breaking changes are introduced.

Full documentation

There's a lot more that TestSlide can offer, please check the full documentation at to learn more.


  • Linux
  • Python 3

Join the TestSlide community

TestSlide is open source software, contributions are very welcome!

See the CONTRIBUTING file for how to help out.


TestSlide is MIT licensed, as found in the LICENSE file.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for TestSlide, version 2.3.1
Filename, size File type Python version Upload date Hashes
Filename, size TestSlide-2.3.1.tar.gz (35.2 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page