第一部分:Python
一.错误异常处理
1.错误类型:语法错误、语义错误、逻辑错误。
2.异常处理:try----except----else----finally
处理的代码块写在try中,出现错误的处理写在except块中,运行正常的处理写在else块中,不管异常与否都一定要执行的放在finally块中:
a = 0
try:
x = 5 / a
except ZeroDivisionError as e:
print('出现特定异常:',e)
except:
print('出现异常')
else:
print('没有异常。')
finally:
x = 0
print(x)
注:except可理解为捕获异常,其后可加具体异常的名字,不加则默认为捕获所有异常,例:except <异常名字>。
3.raise 异常名----手动抛出异常。
二.测试
1.测试分类:单元测试----集成测试----系统测试----验收测试----回归测试
2.单元测试:
首先导入unittest模块,测试用例的类继承自unittest.TestCase
在其中定义功能测试的函数test_xxxx
setUp函数定义准备初始化代码
用自带的self.assertxxxx一些断言(assert)的函数判断结果是否正确
tearDown函数执行清理工作
运行测试时直接调用unittest.main()即可:
import unittest
class Coder():
def __init__(self,name):
self.name = name
self.skills = []
def mastering_skill(self,skill):
self.skills.append(skill)
class CodeTestCase(unittest.TestCase):
#可以用setUp创建测试实例
def setUp(self):
self.c = Coder('Tom')
self.c.skills = ['Python','C#']
#测试函数,以test开头
def test_skill_in(self):
self.assertIn('Python',self.c.skills)
if __name__ == '__main__':
unittest.main()
注:实际编程中,代码单独放在文件中,而测试需要新创一个测试文件夹,在其中导入要测试的代码模块进行测试。
3.常见的断言方法:建立test_xxx(self)的测试函数后,在其中可以调用self的断言函数:
self.assertEqual(值,表达式)
self.assertTrue()
self.assertIn()
self.assertAlmostEqual()----判断大致相等,用于浮点型的判断
还有是否是某类型,大于,不等于…