给编写的程序写测试,我之前一直都没有这个习惯,有几个原因:
1. 连基本单元测试都不会,还是不写了吧。(没有接触!)
2. 接触后,感觉挺机械重复的,挺浪费时间的,又不想写。(这是错误的思想!)
但经常看一些程序员写的文章说,给自己写的代码编写测试,是一种优良的编程规范和习惯。一想,自己励志成为一名优秀的程序员,是很应该学会写测试代码的,不仅是一种优秀的习惯还能使自己的代码出错误率更低,更加健壮。为了进步,学会如何写测试。
1. unittest.TestCase类中的常用的断言方法
方法 | 用途 |
---|---|
assertEqual(a, b) | 核实 a == b |
assertNotEqual(a, b) | 核实 a != b |
assertTrue(x) | 核实 x 为True |
assertFalse(x) | 核实 x 为False |
assertIn(item, list) | 核实item在list中 |
assertNotIn(item, list) | 核实item不在list中 |
断言方法是用来检查你认为该满足的条件是否满足。如果该条件确实满足,你对程序行为的假设就得到了确认,你就可以确信其中没有错误。如果你认为应该满足的条件实际上并不满足,Python将引发异常。
2. 编写函数
编写一个函数,它接受两个形参:一个城市名和一个国家名。这个函数返回一个格式为City, Country的字符串,如 Beijing,China。
# 这是city_functions.py文件
def city(city, country):
"""一个城市及其国家"""
repo_city = city + ', ' + country
return repo_city.title()
编写另一个程序,导入city_functions.py文件的city()
函数。
# 这是city.py文件
from city_functions import city
print('可以在任何时候输入 q 退出程序:')
while True:
city_name = inp