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 hashes)

Uploaded Source

Built Distribution

mazikeen-1.2.8-py3-none-any.whl (20.0 kB view hashes)

Uploaded Python 3

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