2014-02-25 30 views
4

我正在尝试为python项目编写一些鼻子测试。自从我上次写了一些nostests以来,这已经有一段时间了(一年左右),看起来像nose2是现在使用的建议模块。assertRaises(或assert_raises)是否存在于nose2

我想编写一个测试来检查发生异常时,将错误的值发送到def函数。我知道在鼻子中使用这样的:

from nose.tools import assert_raises 

def add(x, y): 
    return x + y 

assert_raises(TypeError, add, 2, "0") 

我只是找不到nose2同等使用例子,没有这些进口工作(有一个建议,nose2更像是比鼻子单元测试,这似乎用assertRaises):

from nose2 import assert_raises 
from nose2 import assertRaises 
from nose2.tools import assert_raises 
from nose2.tools import assertRaises 

翻遍了nose2文档的网站中未提及的assert_raises或assertRaises

+0

我想你不是使用nose2与unittest.TestCase的子类?否则,你可以在nose2中使用unittest.TestCase.assertRaises()。 – capitalistcuttle

+0

因为我提出了这个问题,并基于下面的回答(更多的是跳出点),这是我回去做了。这与我在鼻子下进行测试的方式不同。我希望得到更多的反馈,但我想知道nose2是否已经准备好了黄金时段 –

回答

4

貌似可以在nose2.tools.such.helper找到它的。不,我无法在文档中找到它。请注意0​​和helper;后者只是前者的单例实例。只是为了消除任何混乱,这都是他们的引擎盖下做:

class Helper(unittest.TestCase): 

    def runTest(self): 
     pass 


helper = Helper() 

即它只是通过一个虚拟TestCase实例揭露unittest断言*方法。

相关问题