我不知道为什么单位测试失败了

时间:2018-03-24 07:48:27

标签: python python-unittest

我使用的python版本是2.7。

这是我的目录结构。

WHERE CASE WHEN @p1 + @p2 + @p3 = -3
           THEN 0
           ELSE CASE WHEN myField IN (@p1, @p2, @p3)
                     THEN 0
                     ELSE 1 END END = 0

以下是我制作的单元代码和主要代码。

Calculator.py(主要功能代码)

3kyu/
__init__.py
Calculator.py
tester/
  __init__.py
  Calculator_test.py

并测试.py文件。

Calculator_test.py(unittest code)

class Calculator(object):
def evaluate(self, string):
    calc_lt = string.split(' ')
    result = ''
    for val in calc_lt:
        try:
            if val in ('()+-*/') or float(val):
                result += val
        except ValueError:
            return False
    return round(eval(result),4)

以上代码是计算字符串的计算器。

当我运行Calculator_test.py时...... 错误是

import unittest
from ..Calculator import Calculator as Calc

class Calculator_spec(unittest.TestCase):
    def __init__(self):
        self.Calcs = Calc()

    def test_string_expect(self):
        self.assertFalse(self.Calcs.evaluate("Hello TDD WORLD"))
        self.assertFalse(self.Calcs.evaluate("Hello + TDD * WORLD"))
        self.assertTrue(self.Calcs.evaluate("3 + 4 * 5 / 2 - 7"))

if __name__ == '__main__':
    test_case = Calculator_spec
    test_suite = unittest.TestLoader().loadTestsFromTestCase(test_case)
    unittest.TextTestRunner(verbosity=2).run(test_suite)

请让我知道我需要做什么。

谢谢。

0 个答案:

没有答案