使用pythonic bdd风格的语法创建和运行可执行规范

specit的Python项目详细描述


概述
=


**注意**


规范**不再积极开发**。替换为:

**compare**:对于可插入的"expect"语法

-package:http://pypi.python.org/pypi/compare/
-source:https://github.com/rudylatetae/compare/
-docs:http://packages.python.org/compare/

**checkit**:启用"nose"来检测和运行测试使用bdd样式"descripe"和"it"定义的案例

-package:http://pypi.python.org/pypi/checkit/
-source:https://bitbucket.org/rudylatetae/checkit/


-




specit是帮助开发人员创建
和验证特定于可执行文件的最低限度工具。python软件的实现。它的目标是:


1。提供可读的pythonic语法,用于在示例规范中定义期望。
2。提供一个简单的工具来验证您的规范。

为此,specit提供了两个组件来简化
使用specs的工作。**expect**结构允许您指出软件的可验证预期。它取代了
"self.assert…"语法。**specit**命令使用
`nose<;http://somethingaboutorange.com/mrl/projects/nose>;``来验证您的规范。




如果您使用PIP或简易安装,则可以使用自定义匹配器进行扩展。它们是:

-`nose<;http://somethingaboutorange.com/mrl/projects/nose>;`



安装
----


安装规范的最简单方法是使用"pip install spect"`
或使用"easy_install specit"。或者,您可以从pypi下载http://pypi.python.org/pypi/specit>;``源包,使用python setup.py install提取并安装它。



t
可以帮助您实现上述目标。

**"expect"**,是语法组件。它提供了一个带有
可扩展匹配器的构造,使您能够使用pythonic bdd方式描述软件的预期
行为。同样,这个
帮助你保持你的思想流,而不屈服于
测试集中的非pythonic分布,如"self.assertequal(s)"、
"self.asserttrue"等。

**"specit"**,是命令行组件。它使用nose来发现
,并使用灵活的匹配规则执行规范,这样您就不局限于使用分散注意力的unittest(以测试为中心的)构造
如"def test…"或将您的文件命名为"test…py"。


在规范中使用"expect"结构:

>;cat greeting.py
def greet():
return'hello you'

>;cat greeting\u specs.py
from specit import expect
from greeting import greeting

expect(greet).to\returnllo you')

更重要的是,您不再需要让自己受制于unittest
测试用例所需的不必要的基础。现在,您可以创建这样的规范:

>;cat cool嫒specs.py
class descibecool(object):

def it嫒u cool(self):
pass

甚至::

>;cat awesome嫒specs.py
class myawesomespecs():

def应该_始终微笑(self):
通过

最后,当您想根据sepcs验证您的软件时,
只需在您的项目
目录中运行命令行工具"specit",如下所示::

>;specit
……
-------------------------------------
在0.006s中运行了2个测试





feedback
--


我欢迎任何关于bug的问题或反馈,以及如何改进specit的建议。告诉我你对Specit的看法。我在twitter上。我很欣赏建设性的
批判性或高五度:)

你有改进的建议吗?然后,请创建一个
`issue<;https://bitbucket.org/rudylatetae/specit/issues>;`,详细说明您希望看到的内容。我会看一看,然后和你一起工作,要么扼杀这个想法,要么实现它。







===========

=====
=====
====
====

====



========
======
==================
-核心匹配器:
-连接到tain
-要正确
-要错误

-提供更好的文档和包信息

-如何贡献/开发人员设置

-包url?

-分发、设置工具或分发?

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java计时器结束得太早?   java通过行选择编辑jtable内容   java如何将数组的值传递给另一个类?   java对象。hashCode()算法   代号为1且lambda不工作的java Android本机代码   泛型Java方法签名中是否真的需要“?扩展”?   异常处理声纳问题“main”不应“抛出”任何JAVA 7   java无法使用MVEL导入静态方法   java什么是类路径容器?   java从InputStream解码字节   Eclipse重构仅限Java   java使用Qpid通过SSL与AMQP1.0代理通信   java有没有一种方法可以在Oracle中使用带有时区的时间戳作为函数输入   保存文件时运行安卓 lint的java出错   尽管添加了JScrollPane,java JList视图区域仍在增长   java计算第n个浮点   java如何在mysql中插入日期?   GWT中异步回调的java问题