它的使用非常简单,你的测试类必须是unittest.TestCase的子类,然后定义相应的测试函数,只要把函数名称写成testXXX的格式,然后运行unittest.main(),这些测试函数就会被调用.另外,unittest.TestCase提供了一个函数setUp,这个函数会在每个测试函数被调用之前都调用一次,如果需要做一些初始化处理,可以重载这个函数.unittest模块还提供了一些高级功能,可以查看帮助.
1import unittest
2
3class Person:
4 def age(self):
5 return 34
6 def name(self):
7 return 'bob'
8
9class TestSequenceFunctions(unittest.TestCase):
10
11 def setUp(self):
12 self.man = Person()
13 print 'set up now'
14
15
16 def test1(self):
17 self.assertEqual(self.man.age(), 34)
18
19 def test2(self):
20 self.assertEqual(self.man.name(), 'bob')
21
22 def test3(self):
23 self.assertEqual(4+78,23)
24
25if __name__ == '__main__':
26 unittest.main()
一些相关的链接:2
3class Person:
4 def age(self):
5 return 34
6 def name(self):
7 return 'bob'
8
9class TestSequenceFunctions(unittest.TestCase):
10
11 def setUp(self):
12 self.man = Person()
13 print 'set up now'
14
15
16 def test1(self):
17 self.assertEqual(self.man.age(), 34)
18
19 def test2(self):
20 self.assertEqual(self.man.name(), 'bob')
21
22 def test3(self):
23 self.assertEqual(4+78,23)
24
25if __name__ == '__main__':
26 unittest.main()
- A chapter on Unit Testing in Mark Pilgrim's Dive Into Python.
unittest
module documentation, in the Python Library Reference.- UnitTests on the PortlandPatternRepository Wiki, where all the cool ExtremeProgramming kids hang out.
- Unit Tests in Extreme Programming: A Gentle Introduction.
- Ron Jeffries espouses on the importance of Unit Tests at 100%.
- Ron Jeffries writes about the Unit Test in the Extreme Programming practices of C3.
- PyUnit's homepage.