Skip to main content

Test enviroment for CLI application

Project description

mazikeen is a test framework for command line applications. mazikeen was created to facilitae testing of CLI application that have a predictable output. It facilitates testing on different operating systems by provideing a diff method that is agnostic to newline and make / remove directory. For mazikeen every test has it’s own directory helping debugging and organizing tests. mazikeen empathise parralel testing.

The test structure looks like:

Testsuit1
├── Testcase1
│   └── script.yaml
├── . . .
└──TestcaseN
    └── script.yaml
Testsuit2
├── Testcase1
│   └── script.yaml
├── ...
└──TestcaseN
    └── script.yaml

An example of a simple test:

  # content of script.yaml
---
steps:
  - rmdir: Output
  - makedirs: Output
  - run: echo "Hello World" > Output/hello.txt
  - diff: Output/hello.txt Expected/hello.txt

To execute it:

$ mazikeen
[RUN       ] --- simple
[    PASSED] --- simple
----------------------------------------------------------------
Total test cases: 1 passed: 1 skipped: 0 error: 0 failed: 0
----------------------------------------------------------------
process time: 0.02 execution time: 0.01

Features

  • Provides diff functions agnostic to newline and other common operations for different operating systems like make and remove directory.

  • Every test case is a directory. Making it easy to debug a failing test as all relevant data is stored in one place.

  • Parallel execution support. Testscases can be executed in parallel. A testcase can call multiple CLI applications in parallel.

Documentation

For full documentation, please see https://github.com/hanniballar/mazikeen/blob/master/Documentation/Mazikeen.rst .

Bugs/Requests

Please use the GitHub issue tracker to submit bugs or request features.

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

mazikeen-1.2.6.tar.gz (15.5 kB view details)

Uploaded Source

Built Distribution

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

mazikeen-1.2.6-py3-none-any.whl (19.8 kB view details)

Uploaded Python 3

File details

Details for the file mazikeen-1.2.6.tar.gz.

File metadata

  • Download URL: mazikeen-1.2.6.tar.gz
  • Upload date:
  • Size: 15.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for mazikeen-1.2.6.tar.gz
Algorithm Hash digest
SHA256 96960bd8cc023e3c3d63c574f764aa6d557ea7bdaee13dd05f93a55153f4e8e8
MD5 cdc185e5ccbfb4e76b451b40071cbcd0
BLAKE2b-256 d72965c4df44c9507149f983766bfab0b5b07d74a7f124493bea2d921c0ee17b

See more details on using hashes here.

File details

Details for the file mazikeen-1.2.6-py3-none-any.whl.

File metadata

  • Download URL: mazikeen-1.2.6-py3-none-any.whl
  • Upload date:
  • Size: 19.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for mazikeen-1.2.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8ca466595d793bc39e8b83971f97f65384a1d3aaf9bfcaba27d127f064c79307
MD5 ff36659676c11bf5fe42c681e82d6f1d
BLAKE2b-256 73e1eb8b996ee5b7ced0e1e56e67d6aa8765518b5bdf92cbd4e9c6ea47687dc5

See more details on using hashes here.

Supported by

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