当前位置: 首页 > news >正文

琼海市建设局网站企业网站开发设计

琼海市建设局网站,企业网站开发设计,石家庄模板自助建站,传奇手游排行榜2021前十名一、logging在接口自动化里的应用 1、设置日志的配置,并收集日志文件 日志的设置需要在pytest.ini文件里设置。这个里面尽量不要有中文 2、debug日志的打印 pytest.ini文件的开关一定得是true才能在控制台打印日志 import allure import pytest from P06_PytestFr…

一、logging在接口自动化里的应用

1、设置日志的配置,并收集日志文件

日志的设置需要在pytest.ini文件里设置。这个里面尽量不要有中文

2、debug日志的打印

pytest.ini文件的开关一定得是true才能在控制台打印日志


import allure
import pytest
from P06_PytestFrame.api_keyword.api_key import ApiKey
import logging@allure.title("DS01-通过用户名可以正确登录")
def test_login():# 1. 最重要的日志打印logging.basicConfig(level=logging.DEBUG)logging.error("执行用例:DS01-通过用户名可以正确登录")url = "http://shop-xo.hctestedu.com/index.php?s=/api/user/login"params = {"application": "app", "application_client_type": "weixin"}data = {"accounts": "hami", "pwd": "123456", "type": "username"}ak = ApiKey()# 2. 发送请求res = ak.post(url=url, params=params, data=data)print(f"响应结果是:{res.json()}")# 3.断言sj_res = ak.get_text(res.json(), "$.msg")qw_res = "登录成功1"assert sj_res == qw_res, "结果不一致"

 控制台运行结果

日志收集文件里的存储结果

3、钩子函数

钩子函数放在conftest.py文件里

pytest官网:pytest: helps you write better programs - pytest documentation

return永远不执行后面的

迭代器会往复执行

二、所有接口的区别 

接口四要素不同--数据提取出来--就是数据驱动(DDT)

"数据驱动测试"(Data-Driven Testing,简称DDT)是一种软件测试方法,使用不同的数据集来驱动测试用例的执行。通过将测试数据与测试逻辑分离,DDT可以提高测试覆盖率、增强测试代码的可维护性,并减少重复代码。

1、数据格式

把所有的数据进行提取 - DDT(数据驱动)格式:
单元素:每次拿一个数据(有多少个就多少次)
()--元组,无序
[] --列表 ,有序
{}--字典 , 有序(python3.7开始字典有序,之前的无序)嵌套元素:每次拿一组数据,要取其中的值(可以通过下标去获取)
([],[])--元组里套列表 
[(),()]  --列表里套元组,因为元组无序,所以这个不能通过下标获取
[{},{}]  --列表套字典- 用的最多的一种格式 方法:--装饰器
@pytest.mark.parametrize("变量名",数据源)在运行过程当中,数据源有多少个就会执行多少次

1)单元素数据驱动

data1 = ("hami", "xiaomi", "sanfeng")  元组类型

获取元素的坐标结果

2)嵌套元素数据--列表里套元组

data2 = [("hami","123456"),("xiaomi","111111"),("sanfeng","22222")]

通过下标获取其一数据

 3)嵌套元素数据--列表里套字典

data3 = [{"name": "hami", "password": "123456"}, {"name": "xiaomi", "password":"11111"},{"name": "sanfeng", "password": "222222"}]

三、接口自动化用例模板的编写

要求:

1、编号和行号一致

 

2、 标黄色都是必填

3、请求数据的参数类型

data是表单形式提交,Json是请求头是json的去提交,files是上传文件的接口需要使用

4、断言的字段

5、程序执行完,自动回写的数据

四、读取文件的程序-FileDataDriver.py

用来读取和写入excel \ yaml文件。

利用数据驱动,把excel文件读取成功

五、config.py

用来存放常用的变量(文件路径、读取的sheet页),其中,常量要大写

要从文件的根目录的下一级开始读取文件,所以,config.py文件要在文件的根目录的下一级

如图,是day06.P06_PytestFrame

自己的代码-根目录是day06,下一级是P06_PytestFrame

 

下载指令:pip install openpyxl -i https://pypi.tuna.tsinghua.edu.cn/simple

六、data的路径

下面这些文件是在同一级目录里

 

如果是基于上一层目录下的一层(在二级目录里),则是../

如果只是处于同级目录,是./

七、核心执行器--testcase

拿到数据,进行解析,发送请求

1、反射

class ApiKey:name = "hami"def get(self):print("这是get方法")def post(self, url, data):print("这是post方法")print("url", url)print("data", data)return "ok"# 反射:通过[类(实例化对象)和方法名]找到对应的方法
# 反射的语法:getattr(实例化对象, 方法名/属性名)**参数 ,返回值:方法本体ak = ApiKey()
method = "post"
method_fun = getattr(ak, method)#(类,方法)
method_fun(url="1111",data="2222")

tips:

# eval() # 把字符串 转成[有效的表达式]
#
# a = "1+2"
# print(eval(a)) #3# data = "{'name':'hami'}"
# print(type(eval(data))) #dict

 2、断言

拿到响应数据,和预期数据,断言比较 

 3、动态生成标题:

使用固定的方法,动态生成标题 

 

然后生成的标题

 

http://www.yayakq.cn/news/557260/

相关文章:

  • 惠州网站设计培训河南宣传片制作公司
  • 视频链接生成网站大良网站建设市场
  • 济南shuncheng科技 网站建设网站建设制作设计推广优化
  • 彩票销信 网站怎么做手机酒店网站建设
  • 做网站需要的资料产品推广ppt
  • 商城网站作品小蝌蚪视频网络科技有限公司
  • 网站怎么做二级域名cdn wordpress ip统计
  • 网站板块设计有哪些网站已经备案更换主机
  • 网站类产品怎么做竞品分析网站注册界面设计
  • 网站建设的需求是什么意思婚庆公司多少钱
  • 网站索引量是什么意思莱芜最好的网站建设公司
  • 网站毕业设计开题报告济南的企业网站
  • 怎么自己做网站游戏银川seo公司
  • 网站建设php招聘商品房合同备案查询
  • 太原百度网站快速排名谷歌优化怎么做
  • 网站建设常见故障网站设计制作报价图片欣赏
  • 三亚h5网站定制开发公司呼市做网站公司
  • 电子商务网站建设技能实训答案茌平网站建设道气钻
  • 如何制作课程网站模板下载文章资讯类网站
  • 梧州网站建设2k9网络团队提供高品质网站建设服务字体设计比较好的网站
  • 安溪住房和城乡建设网站html静态网站怎么放在网站上
  • 西安代做毕业设计网站建设网站一定需要云服务器么
  • 安康做网站公司wordpress 3.0.1 漏洞
  • 怎样建立微网站浦东高端网站开发
  • wordpress站酷主题网络运维面试
  • 做一网站要什么软件wordpress 自定义帖子
  • 网络公司网站优化网站建设做网站沈阳本地
  • 网站常用插件wordpress分类列表插件
  • 东莞电商建站网站建设app小程序
  • 中国新农村建设网站建设门户网站系统的必要性