最小BDD库
项目描述
pea - 最小的绿色蔬菜。
pea 是一个最小的Python BDD框架,类似于Ruby的 cucumber 和Python的 lettuce。它的目的是帮助您编写相同类型的测试 - 但是在直接的Python代码中,而不需要所有的解析和间接操作以及其他要跳过的圈子。它非常类似于ruby的 coulda。
使用cucumber风格测试的优点包括
您可以使用纯英文编写测试,而不需要内联代码
您的测试是可读的,并且希望是可编辑的
您可以放心地重用步骤,因为它们都确实做了它们说的事情
pea相对于lettuce、cucumber等项目的优点
那么我该如何使用它呢?
以下是一个最小示例
from pea import * @step def I_go_to_the_store(): world.location='store' world.cart = [] @step def I_buy_some(item): world.cart.append(item) @step def I_go_home(): world.location = 'home' @step def I_have_some_delicious(item): assert item in world.cart world.assertEquals(world.location, 'home') # -------------------- class TestShopping(TestCase): def test_buying_some_peas(self): Given.I_go_to_the_store() When.I_buy_some('peas') And.I_go_home() Then.I_have_some_delicious('peas')
...然后您运行它(使用nosetests,在详细模式下)
通常您会将您的步骤放在单独的Python模块(或多个)中,但这由您决定。
基础知识
@step将您的函数添加到pea的步骤注册表中,这使得它们可以通过Given、When、And和Then来调用。
要在一个步骤内部重用另一个步骤,只需调用该函数即可!
需要注意的事项
请确保您继承自pea.TestCase(并在setUp/tearDown中调用super),因为它负责在测试之间重置world。
您也可以在world上使用TestCase断言方法 - 例如 world.assertEquals(expected, actual)
Pea与rednose配合得很好
项目详情
关闭
pea-0.1.2.tar.gz 的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 7a8501c07353eab0ba1c7207302f5fb63122312b5a02fa267dd500faa4e453bf |
|
MD5 | ee92248f3d76b0622eca6af0d53e438d |
|
BLAKE2b-256 | eaff7ed8d00702e875abc29dbf90808359bb6830532593415c2c937bb024051f |