3

视窗 XP Python 2.7

我正在关注 Python 入门书中的代码,并且在名为 testing 的文件夹中有两个文件。我试图让它失败,但它甚至不会运行测试。第一个文件 my_math.py 只是一个虚拟产品函数

def product(x, y):
    pass

第二个是测试test_my_math.py

import unittest, my_math

class ProductTestCase(unittest.TestCase):

    def testIntegers(self):
        for x in xrange(-10, 10):
            for y in xrange(-10, 10):
                p = my_math.product(x, y)
                self.failUnless(p == x*y, 'Integer multiplication failed')

    def testFloats(self):
        for x in xrange(-10, 10):
            for y in xrange(-10, 10):
                x = x/10.0
                y = y/10.0
                p = my_math.product(x, y)
                self.failUnless(p == x*y, 'Float multiplicaton failed')

    if __name__ == '__main__': unittest.main()

当我在命令行中运行测试时

C:\Python27\Example_Programs\testing>python test_my_math.py

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

C:\Python27\Example_Programs\testing>
4

2 回答 2

2

然后将其取消缩进if到顶层(前面没有空格)。否则,它是class定义的代码块的一部分,将在类完成之前执行(因此此时尚未创建单元测试)。

于 2013-07-03T12:05:18.990 回答
0

阿尔夫先生回答的上层原因也是正确的其他原因可能如下

def setUp(self):
        self.browser = webdriver.Firefox()
        browser=self.browser
        browser.get("http://google.com")

您可能必须在setUp()函数中的 browser.get 方法之前定义此代码 其余代码将在第二个函数的下一段中定义

& 这里setUp()函数名是必须的,否则会报错

于 2015-09-04T06:45:52.110 回答