Skip to main content

Zeroincombenze continuous testing framework and tools for python and bash programs

Project description

License: AGPL-3

Overview

This library can run unit test of software target package. Supported languages are python (through z0testlib.py) and bash (through z0testrc)

zerobug was born to supports test automation, aggregation of tests into collections and independence of the tests from the reporting framework. Currently is becoming an improvements of python unittest2 but still run bash tests.

The command zerobug of this package runs tests: it searches for test runner files named test_ (see -p switch).

Test suite is a collection of test case named test_[0-9]+ inside the runner file, executed in sorted order.

Every suite can contains one or more test case, the smallest unit test; every unit test terminates with success or with failure.

zerobug is full integrated with coverage and travis-ci.

Features

  • Autodiscovery test modules and functions

  • Python 2.7+ and 3.5+

  • coverage integration

  • travis-ci integration

Usage

usage: zerobug [-h] [-B] [-C] [-e] [-f] [-J] [-k] [-l file] [-N] [-n] [-O]
               [-p file_list] [-Q] [-q] [-R] [-r number] [-s number] [-V] [-v]
               [-x] [-X] [-z number] [-0]

Regression test on zerobug

optional arguments:
  -h, --help            show this help message and exit
  -B, --debug           run tests in debug mode
  -C, --no-coverage     run tests without coverage
  -e, --echo            enable echoing even if not interactive tty
                        (deprecated)
  -f, --failfast        Stop on first fail or error
  -J                    load travisrc (deprecated)
  -k, --keep            keep current logfile (deprecated)
  -l file, --logname file
                        set logfile name (deprecated)
  -N, --new             create new logfile (deprecated)
  -n, --dry-run         count and display # unit tests (deprecated)
  -O                    load odoorc (deprecated)
  -p file_list, --search-pattern file_list
                        Pattern to match tests, comma separated ('test*.py'
                        default)
  -Q, --count           count # unit tests (deprecated)
  -q, --quiet           run tests without output (quiet mode, deprecated)
  -R, --run-inner       inner mode w/o final messages
  -r number, --restart number
                        restart count next to number
  -s number, --start number
                        deprecated
  -V, --version         show program's version number and exit
  -v, --verbose         verbose mode
  -x, --qsanity         like -X but run silently (deprecated)
  -X, --esanity         execute test library sanity check and exit
                        (deprecated)
  -z number, --end number
                        display total # tests when execute them
  -0, --no-count        no count # unit tests (deprecated)

© 2015-2023 by SHS-AV s.r.l. - https://zeroincombenze-
tools.readthedocs.io/en/latest/zerobug

Getting started

Prerequisites

Zeroincombenze tools requires:

  • Linux Centos 7/8 or Debian 9/10 or Ubuntu 18/20/22

  • python 2.7+, some tools require python 3.6+, best python 3.8+

  • bash 5.0+

Installation

Stable version via Python Package

pip install zerobug

Current version via Git

cd $HOME
[[ ! -d ./tools ]] && git clone https://github.com/zeroincombenze/tools.git
cd ./tools
./install_tools.sh -pUT
source $HOME/devel/activate_tools

Upgrade

Stable version via Python Package

pip install --upgrade zerobug

Current version via Git

cd ./tools
./install_tools.sh -pUT
source $HOME/devel/activate_tools

ChangeLog History

2.0.17 (2024-07-07)

  • [FIX] z0testlib: no more depends on os0

  • [IMP] Python 3.6 deprecated

2.0.16 (2024-05-14)

  • [FIX] z0testlib: no crash without coverage


  • [FIX] build_cmd: command not in scripts directory

2.0.14 (2024-01-31)

  • [IMP] build_cmd: enable coverage on sub process

  • [FIX] Re-enable coverage statistics

  • [FIX] Printing message: right sequence

2.0.13 (2023-12-21)

  • [FIX] python2: argument signature

  • [IMP] build_os_tree: compatible with unittest2

  • [IMP] remove_os_tree: compatible with unittest2

2.0.12 (2023-11-27)

[FIX] python2: has_args

2.0.11 (2023-11-19)

  • [IMP] Disabled sanity_check

  • [IMP] Disabled some deprecated switches

  • [FIX] Coverage data file

  • [IMP] zerobug: test function signature like unittest2

  • [IMP] zerobug: no more execution for count

2.0.10 (2023-11-10)

  • [REF] Partial refactoring

  • [IMP] New functions assert* like unittest2

  • [IMP] New switch -f failfast

  • [IMP] Test signature like unittest2 and old zerobug signature

  • [IMP] Test flow without return status (like unitest2)

2.0.9 (2023-07-12)

  • [IMP] zerobug implementation with unittest

  • [FIX] z0testlib.py: build_odoo_env, odoo-bin / openerp-server are executable

  • [FIX] z0testlib.py: minor fixes

2.0.7 (2023-05-14)

  • [IMP] travis_run_pypi_tests: new switch -p PATTERN

2.0.6 (2023-05-08)

  • [IMP] Now all_tests is ignored

  • [IMP] Build Odoo environment for Odoo 16.0

2.0.5 (2023-03-24)

  • [FIX] travis_install_env: ensure list_requirements is executable

  • [IMP] flake8 configuration

  • [IMP] coveralls and codecov are not more dependencies

  • [IMP] Test for Odoo 16.0

2.0.4 (2022-12-08)

  • [FIX] run_pypi_test: best recognition of python version

  • [FIX] build_cmd: best recognition of python version

  • [FIX] travis_install_env: ensure coverage version

  • [IMP] odoo environment to test more precise

2.0.3 (2022-11-08)

  • [IMP] npm management

2.0.2.1 (2022-10-31)

  • [FIX] Odoo 11.0+

  • [FIX] Ensure coverage 5.0+

2.0.2 (2022-10-20)

  • [IMP] Stable version

2.0.1.1 (2022-10-12)

  • [IMP] minor improvements

2.0.1 (2022-10-12)

  • [IMP] stable version

2.0.0.2 (2022-10-05)

  • [IMP] travis_install_env: python2 tests

2.0.0.1 (2022-09-06)

  • [FIX] travis_install_env: minor fixes

  • [IMP] z0testlib: show coverage result

2.0.0 (2022-08-10)

  • [REF] Partial refactoring for shell scripts

Credits

Authors

Contributors



Project details


Download files

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

Source Distribution

zerobug-2.0.17.tar.gz (98.6 kB view details)

Uploaded Source

File details

Details for the file zerobug-2.0.17.tar.gz.

File metadata

  • Download URL: zerobug-2.0.17.tar.gz
  • Upload date:
  • Size: 98.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.15

File hashes

Hashes for zerobug-2.0.17.tar.gz
Algorithm Hash digest
SHA256 6c29560206a7041147cbf621f9cf2b3f79ca693ede43ae18548eb4baa4bfa224
MD5 1a406c41b22267bd70aa43eb764393d9
BLAKE2b-256 dc3f23d89577ac503579552a663b06a05d6f4f5708071ee8f466bbb22f0d6a3b

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page