支持参数化测试的鼻扩张

nose_ittr的Python项目详细描述


用于支持参数化测试的前端延伸。

允许开发人员使用不同的值反复运行相同的测试

主要功能:
    非常容易与现有的测试合并
  • 节省了大量样板代码和代码复制
  • 使用所有nose插件(包括多处理)
  • 通过使用此软件包内置的nose plugin setup ittr,为每个测试自定义设置

安装:

pip install nose_ittr

基本用法:

importmathfromnose.toolsimportassert_equal,assert_not_equalfromnose_ittrimportIttrMultiplier,ittrclassTestFoo(object):__metaclass__=IttrMultiplierdefsetup(self):ifhasattr(self,'value'):self.value+=3defteardown(self):pass@ittr(number=[1,2,3,4])deftest_even(self):assert_equal(self.number%2,0)@ittr(numerator=[15,6],denominator=[2,3])deftest_no_remainder(self):assert_equal(self.numerator%self.denominator,0)@ittr(value=[4,14])deftest_prime_with_custom_setup(self):foriinrange(3,int(math.sqrt(self.value))):assert_not_equal(self.value%i,0)
nosetests --with-setup-ittr [for setup customization support]

结果:

TestFoo.test_even_1 ... FAIL
TestFoo.test_even_2 ... .ok
TestFoo.test_even_3 ... FAIL
TestFoo.test_even_4 ... .ok
TestFoo.test_no_remainder_2_6 ... .ok
TestFoo.test_no_remainder_2_15 ... FAIL
TestFoo.test_no_remainder_3_6 ... .ok
TestFoo.test_no_remainder_3_15 ... .ok
TestFoo.test_prime_with_custom_setup_14 ... ok
TestFoo.test_prime_with_custom_setup_4 ... ok
注释:
  • 如果与-v参数一起使用,则不影响测试docstring。

要根据通过测试的变量更改docstring打印输出,请使用插件 nose-docstring-modifier

Authors:

Sergey Ragatsky

Contributors:

Niv Mizrahi

Tal Ben Basat

Nicole Franco

Roy Klinger

Maroun Maroun

0.0.1(2014-11-26)

  • 初始版本

0.0.2(2014-11-27)

  • 在包中添加了nose插件 支持每个测试的设置自定义

0.0.3(2014-11-27)

  • nose插件的错误处理
  • 排错
  • 支持使用new.classob

0.0.4(2014-12-02)

  • 新特性,允许用'uuitr'hook修饰所有类方法

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

推荐PyPI第三方库


热门话题
java爬虫获取外部网站搜索结果   java Bluestack未连接到eclipse   java如何从ConstraintViolationException Hibernamte获取数据库字段名   HttpResponse HttpResponse=httpClient引发java运行时错误。执行(httpPost);   Jama中矩阵的java点积和叉积   java有什么方法可以唯一地识别可扩展设备吗?   java我需要用*来写我的名字,但我不断遇到一个错误,我对编码很陌生   java变量是在内部类中访问的。需要被宣布为最终决定。但我不想宣布最终结果   java如何缩短base64图像字符串,Android?   JavaSpringMVC:计划方法不自动触发   图形学习Java 2D API的好资源是什么?   如何在java中对方法进行排队   java JavaFX多行   java Selenium无法在[链接]上找到基于CSS元素的密码字段元素http://www.cartasi.it/gtwpages/index.jsp   Java中的equals()和hashCode()契约   软删除情况下的java Hibernate二级缓存   java为什么这段代码要两次调用这些方法?