| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> python_unittest框架 -> 正文阅读 |
|
[开发测试]python_unittest框架 |
1、什么是unittest框架?概念:unittest是python自带的一个单元测试框架,用它来做单元测试 对于测试来说,unittest框架的作用是自动化脚本执行框架 2、为什么使用unittest框架1.能够组织多个用例执行 2.提供丰富的断言方法 3.能够生成测试报告 3、unittest核心要素(unittest组成部分)1.TestCase(最核心的模块): 每个TestCase(测试用例)都是一个代码文件,在这个代码文件中来书写真正的测试用例 2.TestSuite TestSuite(测试套件),用来管理组装多个TestCase的 3.TestRunner TestRunner(测试执行,测试运行)用来执行TestSuite的 4.TestLoader TestLoader(测试加载),功能是对TestSuite功能的补充,管理组装多个TestCase的 5.Fixture Fixture(测试夹具),书写在TestCase代码中,是一个代码结构,可以在每个方法执行前后都会运行的内容 4、TestCase(测试用例)1.是一个代码文件,在代码文件中真正用来书写测试用例的 2.代码文件的名字必须按照标识符规则来书写 步骤: 1.导包 2.自定义测试类 3.在测试类中书写测试方法 4.执行代码
5、TestSuite&TestRunner TestSuite(测试套件),用来管理组装多个TestCase的 TestRunner(测试执行)用来执行TestSuite的 步骤: 1.导包(unittest) 2.实例化(创建对象)套件对象 3.使用套件对象添加用例方法 4.实例化运行对象 5.使用运行对象去执行套件对象
6、TestLoader(测试加载) TestLoader作用和TestSuite的作用是一样的,都是对TestSuite功能的补充,用来组装测试用例的 步骤: 1.导包 2.实例化测试加载对象并添加用例? ?----> 得到的是suite对象 3.实例化运行对象 4.运行对象执行套件对象
7、Fixture(测试夹具) Fixture是一种代码结构,在特定情况下会自动执行 方法级别 在每个方法(测试代码)执行前都会自动调用的结果
类级别 在每个测试类中所有方法执行前后都会自动调用的结构(在整个类中前后只会执行一次)
模块级别(了解) 在每个代码文件执行前后执行的代码结构 案例1.打开浏览器? ?----->类级别 2.输入网址? ?----->方法级别 3.输入用户名和密码进行登录? ?----->测试方法 4.关闭当前页面? ?----->方法级别 5.关闭浏览器? ?----->类级别
断言让程序代替人工自动的判断预期结果与实际结果是否相符 断言的结果: True:用例通过 False:代码抛出异常,用力不通过 在unittest中使用断言,都需要通过self.断言方法来试验 assertEqual self.assertEqual(预期结果,实际结果)? #判断预期和实际是否相符 如果相等,用例通过;如果不相等,用力不通过,抛出异常 assertIn self.assertIn(预期结果,实际结果)?? #判断预期是否包含在实际结果中 包含,用例通过;不包含,用例不通过 assertIn('admin','admin')#包含 assertIn('admin','8862admin2233')#包含
参数化参数化在测试方法中,使用变量来代替具体的测试数据,然后使用传参的方法将测试数据传递给方法的变量 好处:相似的代码不需要多次书写 工作中的场景: 1.测试数据一般写在json文件中 2.使用代码读取json文件,提取到我们想要的数据-------->[(),()}? or? [[],[]] 安装插件:pip install parameterized 验证:pip list? ? 看para在不在列表中 ? |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/18 4:50:31- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |