• 四、测试框架/json


    一、接口文档

    接口文档主要定义接口的一些通用规则,是后端工程师指定的

    接口测试中需要我们根据接口文档去postman中请求,来获取异常用例的响应体【也就是预期结果】, 同时需要我们自己判断是否正确

    postman:method、url、headers、body

    注意:接口返回的status_code指的是状态码,是HTTP协议规定的,而返回的code返回码是开发自己定义的

    二、测试框架

    分层设计思想:每一个文件都是一个包文件【带有__init__文件】

    1.路径问题:

    --可以放到配置文件,因为是项目运行过程中不会发生变化,但是对于不同的项目有可能发生变化

    --不放到yaml当中?因为yaml当中存放静态数据,而文件路径有可能变化

    --放到py模块中,

    2.测试报告的路径

    --路径处理

    --时间戳添加到测试报告名称中

    3.请求数据的格式转化

    headers /data数据格式:从Excel读取的字符串转成字段,使用eval( )

    例如:excel里的数据data-->{“mobile_phone”:“13088889999”,“pwd”:“12346”},

    读取出来是字符串“{“mobile_phone”:“13088889999”,“pwd”:“12346”}”,用eval()去字符串

    4.断言

    全量断言:所有数据都要进行对比,一个字都不能差

    部分断言:code 、msg

    5..yaml配置文件

    编写和读取yaml

    注:yaml种的数据也可以写在config.py模块中

    6.json格式的转化

    body中传的参数是json,那么从excel读取的数据要转化成json格式,才能传参成功。

    什么是json:json是一个字符串格式,有特定的要求:

    json当做true、false、null,双引号(

    • 字符串里面必须是双引号
    • null表示什么都没有(不能使用None)
    • false,true 必须是小写的(不能大写)
    a = '{"pwd":"12345678","type":1}'
    b = '{'pwd':'12345678','type':1}'
    c = '{"mobile_phone":None,"pwd":"12345678","type":1}'
    d = '{"mobile_phone":True,"pwd":"12345678","type":1}'
    # 判断是不是json,到网上找json工具(json在线解析)
    # a是json
    # b不是json,不能用单引号
    # c不是json,不能用None,可以替换成null(json表示数据为空时用null,不能用None)
    # c不是json,不能用小写的True,要用TRUE

    json.loads(),是json转字典,注意有s

    json.dumps( ), 是字典转json,注意有s

    import json
    # 把json数据转化成python字典(用json.loads(),不要用eval())
    json_data = '{"mobile_phone":true,"pwd":"12345678","type":1}'
    dict_data = json.loads(json_data)
    print(dict_data)
    
    # 把字典转成json字符串
    new_dict_data = {'name':'yuz','password':None,'femal':False}
    json_date= json.dumps(new_dict_data)
    print(json_date)

    7.什么时候该记录logger

    --记录错误,记录运行的流程

    --断言失败logger.error( ),然后抛出异常raise e

    --断言成功logger.info( ) 

  • 相关阅读:
    Web标准弃用window.applicationCache
    GDI+ DrawString字间距处理
    asp.net cache.count 报错
    CSS3实现文本垂直排列-writing-mode
    使用GDI+ 处理图片成圆图
    html5 input number类型使用整理
    border-radius实例2
    asp.netCore3.0 中使用app.UseMvc() 配置路由
    asp.netCore3.0区域和路由配置变化
    python数据分析个人学习读书笔记-目录索引
  • 原文地址:https://www.cnblogs.com/zhangjx2457/p/13739995.html
Copyright © 2020-2023  润新知