Skip to main content

Tests Docs

Fixate

Fixate is a Python library for testing real stuff. Fixate provides a framework for writing scripts in Python to test hardware. Providing drivers for equipment, support for switching, logging and a basic test runner UI. While Fixate is fairly simple, it is already being used to test real electronics products in real factories.

Getting Started

Fixate runs on Python 3.12 or greater.

Installing

Clone the repository using git or download a zip file and unzip the source. Then run setup.py to install. Alternatively, install from Pypi with 'pip install fixate'

Run the example scripts

There are a number of examples under the examples folder. You will need a clone fo the git repository to get the examples. For a minimal example try running tiny.py. For a more complicated example using multi-level tests, try running multi_level_design.py. The test runner is executed by calling the fixate package and passing in the test script to execute using the '-p' command line argument.

The following commands are for Windows:

git clone https://github.com/PyFixate/Fixate.git
cd Fixate
py -m venv .venv
.venv\Scripts\activate
py -m pip install .
py -m fixate -p examples\tiny.py

Make a script directly executable

For easier development, test scripts can be setup to call the fixate main as their own with some default parameters, as in:

python examples/tiny.py

Running the tests

In general, it is recommended to run the "core" set of tests. The "drivers" tests have a number of dependencies that are not required by default. Tests are run using pytest. The easiest way to run the test is using tox. To run the tests manually using pytest, excluding tests that required instruments, you can run pytest -m "not drivertest".

Check out the docs

https://fixate.readthedocs.io

Contributing

Contributions are welcome. Get in touch or create a new pull request.

Pull requests will need to pass code checks. You can run these most easily locally via pre-commit:

pip install pre-commit
pre-commit install --install-hooks 
pre-commit run --all-files # if not run before on your changes, otherwise leave off the flag

Authors

  • Ryan Parry-Jones - Original Developer - pazzarpj

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the LICENSE.txt file for details

Download files

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

Source Distribution

fixate-0.7.0.tar.gz (121.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fixate-0.7.0-py3-none-any.whl (135.8 kB view details)

Uploaded Python 3

File details

Details for the file fixate-0.7.0.tar.gz.

File metadata

  • Download URL: fixate-0.7.0.tar.gz
  • Upload date:
  • Size: 121.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for fixate-0.7.0.tar.gz
Algorithm Hash digest
SHA256 371fc63dc5f7f70868781bbcdd9363888ab9bd49663c73a1536a54df074d553d
MD5 dc209ce203a634c99788062b08f0de4c
BLAKE2b-256 c548e5474730b0934f946a815207611979b4dd50af4fd3ef9eae6f7cad3bd118

See more details on using hashes here.

Provenance

The following attestation bundles were made for fixate-0.7.0.tar.gz:

Publisher: upload_pypi.yml on PyFixate/Fixate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file fixate-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: fixate-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 135.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for fixate-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 29664f0ad480da4c3b789df06f056d998af599f5e98044c38bcbe270458dc13f
MD5 fbd1ea8a77f8a6f074f5f92ff00f7628
BLAKE2b-256 ab6107ddc83f347acb422a7eae3c7f697b6daf30a862a32efbbeaf622d7fd541

See more details on using hashes here.

Provenance

The following attestation bundles were made for fixate-0.7.0-py3-none-any.whl:

Publisher: upload_pypi.yml on PyFixate/Fixate

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.7.0 This release

2 files

0.6.5

2 files

0.6.4

2 files

0.6.3

2 files

0.6.2

2 files

0.6.1.post1

2 files

0.6.0

2 files

0.5.7.post1

2 files

0.5.6

2 files

0.5.4

2 files

0.5.3

2 files

0.5.2

2 files

0.5.0

2 files

0.4.3

2 files

0.4.2

2 files

0.4.1

2 files

0.4.0

2 files

0.3.5

2 files

0.3.4

2 files

0.3.3

1 file

0.3.2

1 file

0.3.1

1 file

0.3

1 file

0.2.3

1 file

0.2.2

1 file

0.2.1

1 file

0.2

1 file

0.1.2

1 file

0.1.1

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page