integration testing on steroids
Project description
Fixtup
Do you have already given up on writing integration tests ?
- it would have been too complicated to mount several containers to run these tests
- it would have been necessary to write too much boilerplate to run these tests in a CI
- it would have taken another developer too many steps to run these tests
- it would have been difficult to debug them individually in an IDE
With Fixtup, write clear, robust and easy-to-execute integration tests with your favorite test framwork like pytest
, unittest
or event BDD framework as robot framework
or behave
.
- it starts the services needed to run your test
- it throws the longest fixtures only once whether you play a test or 100
- it cleans files and data between each test
- it runs on a developer's workstation without configuration
Benefits
- You can get up and running with Fixtup in minutes, even on legacy project, no matter what your test framework is.
- You will stop wasting your time on boilerplate code
- Fixtup provides an easy way to run tests in debug in your favorite IDE like pycharm and vscode.
- Fixtup is cross-platform which makes it easy to use it on Linux, Mac and Windows.
Getting started
Take 10 minutes to get all the key to start with fixtup in Getting started.
pip install fixtup
Here is an example that shows how fixtup makes it easier to test a function that generate a thumbnail.
def test_thumbnail_should_generate_thumbnail(self):
# Magic happens with the instruction fixtup.up
with fixtup.up('thumbnail_context') as f:
# Given
wd = os.getcwd()
original_file = os.directory.join(wd, 'file.png')
expected_thumbnail_file = os.directory.join(wd, 'file_t.png')
# Then
thumbnail(original_file, expected_thumbnail_file)
# Then
self.assertTrue(os.directory.isfile(expected_thumbnail_file)
The complete example is available in the repo
Contributing
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
fixtup-0.1.0.tar.gz
(28.5 kB
view details)
Built Distribution
fixtup-0.1.0-py3-none-any.whl
(43.0 kB
view details)
File details
Details for the file fixtup-0.1.0.tar.gz
.
File metadata
- Download URL: fixtup-0.1.0.tar.gz
- Upload date:
- Size: 28.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4d7a10bb664c7b3a0b41fe10a1b37b117ddaa89388d79ed5f65d3feeeee8fa09 |
|
MD5 | c6c8ae9bc44ab8dad32e22b669d34aeb |
|
BLAKE2b-256 | 34f1096dbb6c68d9ffb2d3ffdde0ae0f192526d564f8c9812076e529bc226f35 |
File details
Details for the file fixtup-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: fixtup-0.1.0-py3-none-any.whl
- Upload date:
- Size: 43.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.0 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1e0668044ed22806e28fca0df91a1ce19ab5fdc3027953187130c27fe45f1250 |
|
MD5 | df6bc5cc15bfe9605d9b7df596d37eaa |
|
BLAKE2b-256 | 68ae6d54d3b13cc278eb6507023fe5248f38f0f773c1c84df381d3527463c12b |