自动化测试框架
自动化测试框架
木子七.
这个作者很懒,什么都没留下…
展开
-
2.pytest前后置(固件、夹具)处理
一、setup/teardown/setup_calss/teardown_class 为什么需要这些功能? 比如:我们执行用例之前,需要做的哪些操作,我们用例执行之后,需要做哪些操作# 在所有用例之前,只执行一次def setup_class(self): print('在每个类执行前的初始化的工作,比如:创建日志对象,连接数据库等')# 在所有用例之后,只执行一次...原创 2022-05-04 09:37:00 · 120 阅读 · 0 评论 -
5.@pytest.mark.parametrize()数据驱动
简介:pytest.mark.parametrize 是 pytest 的内置装饰器,它允许你在 function 或者 class 上定义多组参数和 fixture 来实现数据驱动。@pytest.mark.parametrize() 装饰器接收两个参数:第一个参数以字符串的形式存在,它代表能被被测试函数所能接受的参数,如果被测试函数有多个参数,则以逗号分隔;第二个参数用于保存测试...原创 2022-05-04 12:04:00 · 129 阅读 · 0 评论 -
4.pytest结合allure-pytest插件生成allure测试报告
之前我们使用的测试报告插件是pytest-html这次使用的插件是allure-pytest,更加美观强大安装插件pip3 install allure-pytest安装allure(Mac)#Mac可以直接使brew安装,会自动配置环境变量#如果是Windows,去下载压缩包,解压然后配置环境变量即可 brew install allure生成json格式的临时报告运行...原创 2022-05-04 11:26:00 · 49 阅读 · 0 评论 -
3.pytest断言assert
pytest使用的python自带的断言assert关键字,和unittest封装的assert断言不一样原理:用来测试某个断言条件,如果断言条件为True,则程序将继续正常执行;但如果断言条件为假False,则会引发AssertionError异常并显示相关的错误消息。语法:class TestLogin: def test_login(self): i ...原创 2022-05-04 10:13:00 · 62 阅读 · 0 评论 -
1.pytest入门
一、pytest单元测试框架概念:单元测试是指在软件开发中,针对软件的最小单位(函数、方法等)进行正确性的检查测试 单元测试框架是自动化测试框架中的组成部分之一 pom设计模式是自动化测试框架中的组成部分之一用途:测试发现:从多个文件里面去找到我们的测试用例测试执行:按照一定的顺序和规则去执行,生成结果测试判断:通过断言判断逾期结果和实际结果的差...原创 2022-05-03 23:59:00 · 64 阅读 · 0 评论 -
1.httprunner3入门
一、httprunner3httprunner是一款面向HTTP(S)协议的通用开源测试框架支持三种格式的用例:YAML/JSON/Pytest,httprunner3以前不支持pytest用例可实现自动化测试、持续集成等多种测试需求继承Requsts的全部特性在HAR支持下记录并生成测试用例支持variables、extract、validate、hooks机制使用debugt...原创 2022-05-04 20:36:00 · 96 阅读 · 0 评论 -
7.httprunner-pytest风格用例
用例设计原则py文件名以test_开头或者_test结尾函数名以test_开头类名以Test开头,并且不能有init初始化方法所有的包pakege必须有_init_.py文件pycharm设置pytest 运行settings → Tools → Python Integrated Tools → Testing / 将 default test runner 设置为pyte...原创 2022-05-09 15:35:00 · 176 阅读 · 0 评论 -
4.httprunner-参数化和数据驱动
前言参数化在config中使用parameters关键字httprunner2.x 是在testsuite中实现参数化httprunner3.x 是在testcase中的config实现参数化什么场景适合参数化举例:测试搜索功能,只有一个输入框,但是有十种不同的搜索关键字测试账号登录功能,需要输入账号密码,然后按照等价类划分后有20种组合情况参数基本分为两种...原创 2022-05-05 19:21:00 · 98 阅读 · 0 评论 -
6.jmespath表达式
jmespath是json的查询语言可以从json文档中提取和转换元素,类似于jsonpath的另外一个库字典取值# 一层嵌套取值{a:1,b:2,c:3}"""取a的值:a"""# 多层嵌套取值# 多层嵌套取值{a:{b:3,c:4,d:{e:1}}}"""取a的值:a取b的值:a.b取e的值:a.d.e"""列表通过下标取值#跟python一...原创 2022-05-09 10:52:00 · 310 阅读 · 0 评论 -
3.httprunner-extract/.env/Testcase
参数关联-extract场景:上一个接口的返回值,传给下一个接口当请求参数extract:提取变量$变量名 :引用变量假设我们有如下场景用户A登录之后,返回值返回用户UID,我们需要查询该用户的用户信息,需要用到登录接口返回值的uid那我们先请求登录接口,然后使用extract提取uid,获取用户信息接口里面我们再引用uid变量config: name: 登录用例 ba...原创 2022-05-05 18:16:00 · 79 阅读 · 0 评论 -
6.YAML文件详解、PyYaml操作
YAML简介:yaml是一种数据格式,支持注释,换行,多行字符串,裸字符串(正序,字符串)YAML作用:用于全局的配置文件用于测试用例编写YAML语法规则:区分大小写使用缩进表示层级,不能使用tab键进行缩进,只能用空格缩进没有数量,只要前面对其就可以注释是#数据组成:Map对象#键值对,key:(空格)value,必须加空格,如果换行,可以不加空...原创 2022-05-04 14:35:00 · 121 阅读 · 0 评论 -
2.httprunner-yaml用例结构
前言:httprunner3.x版本弱化了api层的概念直接在testcase中写request请求如果是单个请求,也可以直接写成一个testcase每个testcase必须具有两个类属性:config和teststepsconfig每个测试用例都应该有一个config部分,可以在其中配置用例级别,有以下属性name: 指定测试用例名称 这将显示在执行日志和测试报告中-...原创 2022-05-05 14:21:00 · 218 阅读 · 0 评论 -
5.httprunner-hook机制
hook简介httprunner3是基于python的pytest框架,里面也有前置和后置的概念setup_hooks:开始执行前触发hook函数,主要用于请求预处理(签名,加密等)teardown_hooks:结束执行后触发hook函数,主要用于返回预处理(解密等)前后置函数编写#debugtalk#前后置函数编写在debugtalk文件里面#函数名称可自定义def ...原创 2022-05-09 10:35:00 · 196 阅读 · 0 评论
分享