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.9.tar.gz (20.3 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.9-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mazikeen-1.2.9.tar.gz
  • Upload date:
  • Size: 20.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for mazikeen-1.2.9.tar.gz
Algorithm Hash digest
SHA256 1c85e2f7c82111918a5be153ebb086cf34d6ada2abb175e14b943c9b5b97dfc7
MD5 baeb1463f98e156f9c265dc742ec9db7
BLAKE2b-256 f1c3521dd30ac21020fdeee8f56d18f144bddc709246ddc963365701717d428e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mazikeen-1.2.9-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.9

File hashes

Hashes for mazikeen-1.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 434ee571686dbf166a40853942736127abf750e2568ff4469c65405f66f1b06d
MD5 7768faa05f5e31803ce7d9855874a9a0
BLAKE2b-256 4df8dfd91fda506dd05dc912c1a4bcda1ef8fbc997765ced0b1a9df77ea459d3

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