我已经通过了文档,但并不理解python中真正意义上的单元测试。
我有一个测试代码,任何人都可以告诉我如何对它进行unittestng?蟒蛇单元测试问题
a = 1
b = 2
def test():
c = a + 2
if c > 5:
z = 7
else:
z = 8
answer = b + z
return answer
我已经通过了文档,但并不理解python中真正意义上的单元测试。
我有一个测试代码,任何人都可以告诉我如何对它进行unittestng?蟒蛇单元测试问题
a = 1
b = 2
def test():
c = a + 2
if c > 5:
z = 7
else:
z = 8
answer = b + z
return answer
要测试你的test()方法,你应该创建一个这样
import unittest
from your_file import test
class TestMethodTestCase(unittest.TestCase):
def test_01a(self):
""" test the test method"""
self.failUnlessEqual(9, test(a=4, b=2)) # here you write all the use case you need to be sure that your method is correctly doing the job
self.failUnlessEqual(10, test(a=1, b=2))
self.failUnlessEqual(11, test(a=5, b=3))
if __name__=="__main__":
unittest.main()
与test()方法是这样定义的测试文件:
def test(a=1, b=2):
c = a + 2
if c > 5:
z = 7
else:
z = 8
answer = b + z
return answer
你的测试代码总是做同样的事情,所以单元测试将非常简单:检查test()返回它应该返回的内容。一个更实际的例子是如果test()带两个参数('test(a,b)')。在这种情况下,您可以尝试使用几个不同的参数,并检查它是否在所有情况下返回期望值。 – 2011-05-14 21:54:45
我不明白you.if可以说我通过一个变量d来测试并在answer = b + z + d中使用那个d。我想chk如果这个d不应该像字符串或浮动无效。我如何创建测试。请给我举个例子吧。 – pinky 2011-05-15 06:39:13
从你对这个问题的评论中,我觉得你应该先研究什么是单元测试,然后再深入研究Python,然后再回顾一下你遇到的这个问题。 – 2011-05-15 10:36:35