测试用例是通过​​def​​​定义的方法。测试用例的方法名建议使用小写字母,且必须以​​test​​开头。测试用例包含用例执行过程和对执行结果的断言:

import unittest

class MyTestClass(unittest.TestCase):
@classmethod
def setUpClass(cls):
print('setUpClass')

def setUp(self):
self.blog_name = 'hy592070616'
print('setUp')

def test_first(self):
self.blog_name += '--machine learning'
self.assertEqual(self.blog_name, 'hy592070616--machine learning')


def tearDown(self):
print('tearDown')

@classmethod
def tearDownClass(cls):
print('tearDownClass')


if __name__ == '__main__':
unittest.main()

测试用例的定义非常简单,如何合理地组织测试用例以及如何添加合适的断言非常关键,我们有如下建议:

  • 多个测试用例文件尽量不要存在依赖关系,否则一旦被依赖的测试用例执行失败,后续有依赖关系的测试用例也会执行失败。
  • 一个测试用例文件只包含一个​​class​​​,一个​​class​​对应一个业务场景。
  • 一个​​class​​​类可以包含多个​​def​​定义的测试用例。
  • 一个​​def​​测试用例下面可以添加多个断言,类似于你在做功能测试的时候一个步骤可能需要检查多个点。