测试代码
-
可以通过测试函数
注: -
导入了模块unittest和要测试的函数get_formatted_ name()。
-
你可随 便给这个类命名,但最好让它看起来与要测试的函数相关,并包含字样Test
-
这个类必须继承 unittest.TestCase类
-
我们运行test_name_function.py时,所有以test_打头的方法都将自动运行
-
self.assertEqual(formatted_name, ‘Janis Joplin’)的意思是说: “将formatted_name的值同字符串’Janis Joplin’进行比较,如果它们相等,就万事大吉,如果它 们不相等,跟我说一声!”
-
代码行unittest.main()让Python运行这个文件中的测试
-
第1行的句点表明有一个测试通过了。接下来的一行指出Python运行了一个测试,消耗的时 间不到0.001秒。最后的OK表明该测试用例中的所有单元测试都通过了。
-
不能通过的测试
注:
1.第1行输出只 有一个字母E(见Ø),它指出测试用例中有一个单元测试导致了错误。
2.看到 NamesTestCase中的test_first_last_name()导致了错误
3.一个标准的traceback
4.最后,还看到了一条消息,它指出整个测试用例 都未通过 -
测试未通过时
测试未通过时怎么办呢?如果你检查的条件没错,测试通过了意味着函数的行为是对的,而 测试未通过意味着你编写的新代码有错。因此,测试未通过时,不要修改测试,而应修复导致测 试不能通过的代码:检查刚对函数所做的修改,找出导致函数行为不符合预期的修改
-
添加新测试
-
测试类
各种断言方法:
**
- 方法setUp()
**
如果你在TestCase类中包含了方法setUp(),Python将先运行 它,再运行各个以test_打头的方法