dingus

软件截图:
dingus
软件详细信息:
版本: 0.3.4
上传日期: 14 Apr 15
许可: 免费
人气: 12

Rating: nan/5 (Total Votes: 0)

dingus是有点像一个模拟对象。主要的区别是,你不成立的预期提前。你只要运行你的代码,使用dingus到位另一个对象或类的,它会记录发生在什么。然后,一旦你的代码已经被行使,你可以什么它做的dingus断言。
新dingus从Dingus类创建。你可以给dinguses名字,这有助于调试你的测试,尤其是当有在玩多dinguses。
 从>>>进口dingus Dingus
  >>> D = Dingus(“根”)
  >>>ð
 
访问dingus的任何属性将返回一个新dingus。
  >>> d.something
 
也有少数例外特殊dingus方法。我们会看到一些在一个位。
一个dingus也可以被称为像一个函数或方法。它不在乎你有多少争论给它或者是这些参数是。调用一个dingus总是返回相同的对象,不管争论。
  >>> D()
 
  >>> D('说法')
 
  >>> D(55)
 
录制和断言
在任何时候,我们可以得到已作出一个dingus的呼叫的列表。在调用列表中的每个条目包含:
  *的方法的调用的名字(或“()”如果dingus本身被称为)
  *的参数,或者()如果没有
  *关键字argumnets,或{}如果没有
  *被返回给调用者的值
下面是我们为D迄今取得的呼叫列表:
 从>>>进口pprint pprint
  >>> pprint(d.calls)
  [('()',(),{},),
 ('()',('说法',),{} ),
 ('()',(55,),{},)]
您可以过滤按名称,参数和关键字参数要求:
  >>> pprint(d.calls('()',55))
  [('()',(55,),{},)]
如果你不关心一个特定的参数的值,可以在过滤时使用的值dontCare项:
 从>>>进口dingus dontCare项
  >>> pprint(d.calls('()',dontCare项))
 ('()',('说法',),{} ),
 ('()',(55,),{},)]
Dinguses可以做的不仅仅是有访问属性和调用。它们支持Python的很多运营商。的目标是允许,并记录,任何交互:
  >>> D = Dingus(“根”)
  >>>(2 ** d.something)['你好']()/ 100 *'富'
 
(希望你现实世界dingus录音不会这个样子!)
补丁
Dingus提供了在测试过程中修补对象的上下文经理。例如:
 从>>>进口dingus补丁
  >>>进口的urllib2
  >>>补丁('urllib2.urlopen'):
  ...打印urllib2.urlopen .__ class__
&NBSP; <类的dingus.Dingus“>
&NBSP; >>>打印urllib2.urlopen .__ class__
&NBSP; <式“功能”>
您也可以使用它作为您的测试方法装饰:
&NBSP; >>> @patch('urllib2.urlopen“)
&NBSP; ...高清test_something(个体经营):
&NBSP; ...通
&NBSP; ...
DANGEROUS MAGIC
Dingus还可以自动运行测试时更换模块的全局。这使您可以编写完全隔离的单元测试。见例子/ urllib2的/ test_urllib2.py的例子。笔者不再建议使用此功能,因为它可以鼓励很脆的测试。你应该感到手动嘲讽依赖的痛苦; 。疼痛会告诉你,当一个类合作,与太多的人

要求

  • 在Python中

类似的软件

GAJET
GAJET

2 Jun 15

nose-setenv
nose-setenv

14 Apr 15

Linux Test Project
Linux Test Project

12 May 15

filterunit
filterunit

11 May 15

显影剂的其他软件 Gary Bernhardt

expecter
expecter

20 Feb 15

意见 dingus

评论没有发现
添加评论
打开图片!