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.8.tar.gz (15.7 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.8-py3-none-any.whl (20.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: mazikeen-1.2.8.tar.gz
  • Upload date:
  • Size: 15.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.10

File hashes

Hashes for mazikeen-1.2.8.tar.gz
Algorithm Hash digest
SHA256 9f3e36ab9f88aba25cb7418a9d04e338e073ad9c29fd699bd66c089f9c55c442
MD5 734f35ab2c49cae3b50f4a107f8840f4
BLAKE2b-256 0a0728982ec2cbac103a284cfc801c13ab3feb877179e41e0237974e83c72ad2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: mazikeen-1.2.8-py3-none-any.whl
  • Upload date:
  • Size: 20.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.8.10

File hashes

Hashes for mazikeen-1.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 7f81c0e0bba30c1fc39011f5968b96d1211021836e820ea1f85322026a28c0c8
MD5 82ee8ce4baa65f5d4be2d1914b2e208b
BLAKE2b-256 d1c48026181528c682ca47d925eb836e682fbb321645bd4fb0a4daa7490b47fd

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