自动化框架一:unittest

<1>unittest是python中的测试框架,它是一个标准库。
 
<2>unittest框架的作用
测试工程师的角度:组织、编写自动化测试用例
 >批量执行用例
>提供丰富的断言知识
>可以生成报告
 
<3>unittest的四大组件
TestCase —— 测试用例
TestFixture —— 测试固件
TestSuite+TestLoader —— 测试套件
TestRunner —— 测试运行器
一、TestCase(测试用例)

unittest的用例规则:

1、测试文件必须导包:import unittest

​ 2、测试类必须继承 unittest.TestCase

​ 3、测试方法必须以 test_开头

实例代码:

 

 

二、TestFixture —— 测试固件

 1 方法级别

在每个测试方法(用例代码)执行前后都会自动调用的结构

  • def setUp(),每个测试方法执行之前都会执行 (初始化)
  • def tearDown(),每个测试方法执行之后都会执行 (释放)

示例代码:

 

2 类级别

在每个测试类中所有方法执行前后 都会自动调用的结构(在整个类中 执行之前执行之后各一次)

  • def setUpClass() ,类中所有方法之前
  • def tearDownClass(),类中所有方法之后

 

三、TestSuite+TestLoader —— 测试套件

TestSuite(测试套件):用来组装,打包 ,管理多个TestCase(测试用例)文件的

TestLoader(测试加载)
说明:
1. 将符合条件的测试方法添加到测试套件中
2. 搜索指定目录文件下指定字母开头的模块文件下test开始的方法,并将这些方法添加到测试套件中,最后返回测试套件
3. 与Testsuite功能一样,对他功能的补充,用来组装测试用例

一般测试用例是写在Case这个文件夹里面,当测试用例超多的时候就可以考虑 TestLoader

实例代码:

 

 四、TestRunner —— 测试运行器

 

TestRunner(测试执行):用来执行 TestSuite(测试套件的)

 

代码:首先要准备多个测试用例的文件才可以实现TestSuite和TestRunner,以下代码是已经准备了unittest_Demo2和unittest_Demo1两个测试用例文件

 

一般现在用HTMLTestRunner运行器来批量执行和生成测试报告,这个HTMLTestRunner.py文件是三方编写的,附件在下方。

实例代码:

 

 

 

<4>unittest的断言和跳过
 自动化脚本执行时都是无人值守,需要通过断言来判断自动化脚本的执行是否通过,下方是常用断言语句
 

 

 对于一些未完成的或者不满足测试条件的测试函数和测试类, 不想执行,可以使用跳过(比如执行冒烟测试想跳过部分用例的)

 

 

 

 

<5>数据驱动
posted @   苦逼小李  阅读(108)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示