Kills Bugs Dead!
This package is a minimalist functional test suite for binaries. It relies on a description of tests usually in test.yml or test.json.
The documentation is available here.
It can be either a .yml or a .json file.
version: 1
tests:
- name: Arguments check
tests:
- name: No errors if two arguments
args: [1, 2]
exit: 0
- name: Error if less than two arguments
args: [1]
exit: 1
- name: Stdout is the sum of arguments
args: [1, 2]
stdout: []
- name: Version on stderr
args: ['--version']
stderr:
- regex: '\b\d\.\d\.\d\b'
- contains: 'Version'$ info-test -v ./a.out
Test 1: Arguments check
Test 1.1: No errors if two arguments................ PASSED
Test 1.2: Error if less than two arguments.......... PASSED
Test 2: Stdout is the sum of arguments.................. PASSED
Test 3: Version on stderr............................... PASSED
Ran 4 tests in 0.0s.
ok.CLI highlights:
- Use
--prettyto render rich panels for failing tests, including captured command telemetry. - Pass
-T/--tableto display an aggregated summary table once the run completes. - Provide a custom test definition with
-c/--config; prior Baygon 0.5.x releases used-tfor this option, which is still accepted for backward compatibility.
pip3 install baygonThe documentation is build upon VuePress.
cd docs
yarn install
yarn docs:build
yarn docs:devsudo apt update python-venv
git clone https://github.com/heig-tin-info/baygon.git
cd baygon
python -m venv env
source env/bin/activate
pip install -e .Install pyenv then install all required version of Python:
pyenv install 3.6.15
pyenv install 3.7.12
pyenv install 3.8.12
pyenv install 3.9.9
pyenv install 3.10.4
pyenv install 3.11.0
pyenv install 3.12.0
pyenv global 3.6.15 3.7.12 3.8.12 3.9.9 3.10.4 3.11.0 3.12.0Then setup your Poetry environment:
poetry installRun the tests:
poetry run tox