课程重点
单元测试
- 单元测试的度量方法
语句覆盖
判断覆盖
条件覆盖
路径覆盖 - 应用单元测试的度量方法,提高测试设计覆盖率
unittest
- unittest的编写规范
测试模块必须首先导入unittest
测试类必须继承unitest.TestCase
测试方法必须test_*开头
模块,类名字没有要求 - setUp tearDown
setUp, tearDown的作用范围: 方法、类、模块
pytest
最好的Python自动化测试框架
- pytest的编写规范
测试文件以test_
测试类必须以Test开头
测试方法必须test_*开头
- 第三方组件的使用
- 参数化测试用例
- 多个assert的实现
- 自动rerun失败的测试用例
- marks的使用
- fixtures的使用,三种调用方法
allure
- Allure的安装
- Allure产生测试报告
- Allure的特性特性。 feature/story, step, testcase, step, severity
典型的测试工具目录结构
作业
下载这个项目的源代码。https://github.com/lxneng/xpinyin
注意不是用pip安装哦。
- 使用pytest实现对get_pinyin, get_initial, get_initials的单元测试
- 至少一个测试用例用上pytest.mark.parametrize方法
- 三个方法的行覆盖率要达到80%(什么工具?)
- 使用allure生成测试报告,要求使用上allure的feature, story , step, attach方法,attach可以使用一个固定的图片即可。
工程目录结构如下,测试代码写到testcases/pinyin目录下。