Autotest python code
Project description
autopytest
An implementation of autotest
for Python inspired by autotest and guard.
autopytest observes file change events and whenever you save a file it runs the appropriate tests with pytest
.
Features
autopytest
observes file modified
events and will perform the following:
- source files
- will find and run the associated individual test file
- upon success, will run the entire suite
- if we can't find a matching test, run the entire suite
- test files
- will run that test file
- upon success, will run the entire suite
Install
# pip
pip install autopytest
# poetry
poetry add autopytest
Configuration
In your pyproject.toml
add the following.
[tool.autopytest]
source_directories = ["app"]
test_directory = "tests"
Usage
cd {project}
autopytest
autopytest {path}
Project Structure
- Test naming is currently important.
- Multiple nested directory structures are supported as long as the convention is followed.
Applications
pyproject.toml
for applications
[tool.autopytest]
source_directories = ["app", "lib"]
test_directory = "tests"
Given the above configuration. You should use a directory structure like the following. e.g. If app/package/module.py
is edited we will attempt to locate and run tests/app/package/test_module.py
📁 app
📄 __init__.py
📁 package
📄 __init__.py
📄 module.py
📁 lib
📁 tests
📄 __init__.py
📁 app
📁 package
📄 test_module.py
📁 lib
Libraries
pyproject.toml
for libraries
[tool.autopytest]
include_source_dir_in_test_path = false
source_directories = ["src"]
test_directory = "tests"
If you are developing library and want your folder structure like the following. e.g. If src/package/module.py
is edited we will attempt to locate and run tests/package/test_module.py
📁 src
📁 package
📄 __init__.py
📄 module.py
📁 tests
📁 package
📄 test_module.py
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
Built Distribution
Hashes for autopytest-0.0.10-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b657cf224c5f48b80fd5d60457557bc3a7358c6cee3bc1a010ba4915b74c4030 |
|
MD5 | 7d769c413d375e502f4a4bbdbce20d17 |
|
BLAKE2b-256 | 5b48387af9003266186fc7bf5fe8fb74cced5e97cd69daa2eb32e5bb2ef20779 |