= Nimoy
A testing and specification framework for Python 3, heavily inspired by the amazing http://spockframework.org/[Spock Framework].
image:https://badge.fury.io/py/nimoy-framework.svg["PyPI version", link="https://badge.fury.io/py/nimoy-framework"] image:https://circleci.com/gh/browncoat-ninjas/nimoy/tree/develop.svg?style=svg["CircleCI", link="https://circleci.com/gh/browncoat-ninjas/nimoy/tree/develop"]
== Better Python Testing
Powerful Python DDT (Domain Driven Testing) made easy with Nimoy's DSL:
from nimoy.specification import Specification
class MySpec(Specification):
def my_feature_method(self):
with given:
a = value_of_a
b = value_of_b
with expect:
(a * b) == expected_value
with where:
value_of_a | value_of_b | expected_value
1 | 10 | 10
2 | 20 | 40
== Installation
=== Python 3.8 or earlier
pip install nimoy-framework==1.0.2
=== Python 3.9 or later
pip install nimoy-framework
== Why?
The http://spockframework.org/[Spock Framework] has set a new standard as to what testing frameworks should be like - beautiful, expressive, pragmatic and fun.
While unittest
, https://github.com/pytest-dev/pytest[pytest] and https://github.com/nose-devs/nose2[nose2] are great, there's still room for improvement.
The aim of this project is to port Spock to Python while maintaining the original vision as much as possible.
== Features
unittest
, so minimal dependencies are required and specifications are recognized by IDEs and report analyzers.== Learn More
== License
Apache License 2.0
== In memory of Leonard Nimoy 1931-2015