Web自动化测试13:掌握UnitTest框架的基本使用方法

本文带你深入理解Python的UnitTest框架,涵盖TestCase创建、TestSuite组织、TextTestRunner执行、TestLoader自动化加载,以及实战案例。掌握如何编写、组织和运行单元测试,提升测试效率。
摘要由CSDN通过智能技术生成

更多功能测试以及全套学习路线图均在专栏,↑↑戳进去领取~

👼 Web自动化测试01:认识web自动化在什么项目中适用
👼Web自动化测试02:Web自动化测试工具选择大全
👼Web自动化测试03:Selenium安装配置,详细教程
👼Web自动化测试04:Selenium-API操作之元素定位
👼Web自动化测试05:Selenium-CSS定位
👼Web自动化测试06:元素操作、浏览器操作方法以及获取元素信息
👼Web自动化测试07:Selenium—鼠标操作
👼Web自动化测试08:Selenium—键盘操作
👼Web自动化测试09:Selenium元素等待
👼Web自动化测试10:Selenium下拉选择框、弹出框、滚动条操作
👼Web自动化测试11:Selenium之frame切换、多窗口切换
👼Web自动化测试12:Selenium窗口截图、验证码处理



学习目标

我们web自动化的内容,一共分为七个模块。今天开始第三章的学习,UnitTest框架相关内容。如果你们还想回顾功能测试等等相关内容欢迎关注上方专栏!!!

本文学习目标:

掌握UnitTest框架的基本使用方法


一、UnitTest框架

1.1 什么是框架

说明:

  1. 框架英文单词framework
  2. 为解决一类事情的功能集合

1.2 什么是UnitTest框架

概念:UnitTest是Python自带的一个单元测试框架,用它来做单元测试。

1.3 为什么使用UnitTest框架

1.能够组织多个用例去执行
2.提供丰富的断言方法
3.能够生成测试报告

1.4 UnitTest核心要素

1.TestCase
2.TestSuite
3.TestRunner
4.TestLoader
5.Fixture

二、TestCase

说明:TestCase就是测试用例

2.1 案例

定义一个实现加法操作的函数,并对该函数进行测试

2.2 定义测试用例

1.导包:import unittest
2.定义测试类:新建测试类必须继承unittest.TestCase
3.定义测试方法:测试方法名称命名必须以test开头

2.3执行测试用例

方式一:
使用pycharm在代码上点击鼠标右键,选择使用UnitTest运行方式二:
调用 unittest.main() 来运行

思考:如何同时运行多个测试用例?

三、TestSuite

说明:(翻译:测试套件)多条测试用例集合在一起,就是一个TestSuite 使用:
1.实例化: suite = unittest.TestSuite()
(suite:为TestSuite实例化的名称)

2.添加用例:suite.addTest(ClassName(“MethodName”)) (ClassName:为类名;MethodName:为方法名)

3.添加扩展:suite.addTest(unittest.makeSuite(ClassName))
(搜索指定ClassName内test开头的方法并添加到测试套件中)

提示:TestSuite需要配合TestRunner才能被执行

四、TextTestRunner

说明:TextTestRunner是用来执行测试用例和测试套件的使用:
1.实例化: runner = unittest.TextTestRunner()

2.执行: runner.run(suite) # suite:为测试套件名称

需求:
将test01.py…test10.py共10条用例,将这10条用例批量执行;

问题:

1.使用suite.addtest(unittest.makeSuite(className))导入10条测试类
2…addtest()需要添加10次

五、TestLoader

说明:
用来加载TestCase到TestSuite中,即加载满足条件的测试用例,并把测试用例封装成测试套件。
使用unittest.TestLoader,通过该类下面的discover()方法自动搜索指定目录下指定开头的.py文件

并将查找到的测试用例组装到测试套件;

用法:
suite = unittest.TestLoader().discover(test_dir, pattern=‘test*.py’) 自动搜索指定目录下指定开头的.py文件,并将查找到的测试用例组装到测试套件test_dir: 为指定的测试用例的目录
pattern:为查找的.py文件的格式,默认为’test*.py’

也可以使用unittest.defaultTestLoader 代替 unittest.TestLoader()

运行:
runner = unittest.TextTestRunner() runner.run(suite)

5.1 TestLoader与TestSuite区别

1.TestSuite需要手动添加测试用例(可以添加测试类,也可以添加测试类中某个测试方法)
2.TestLoader搜索指定目录下指定开头.py文件,并添加测试类中的所有的测试方法,不能指定添加测试方法;

总结

1.UnitTest框架的作用?
2.如何定义测试用例?
3.如何执行测试用例?
4.如何使用TestSuite?
5.如何运行TestSuite?
6.如何使用TestLoader?
7.TestLoader与TestSuite的区别?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值