• 配置模块引入,接口自动化框架模型搭建


    配置模块的引入

    需求背景:

    进行自动化测试的时候会有很多的设置常量需要操作。

    比如 baseurl,db连接数据,测试用用户名,管理员账号,token,auth之类

    比较好的方式是使用一个静态文件保存下来,编写方法固定读取

    涉及第三方库 configparser.ConfigParser

    step1  创建一个配置文件解析器对象

    conf  = configParser()

    step2 将配置文件配置到解析器对象中

    conf.read("filename.ini",encoding='utf-8'

    step3 读取相关的配置内容

    #方法1 get: 读取的所有内容都会当成字符串来处理
    res = conf.get(‘log’,‘filename’)
    print(res)
    #方法二 getint 专门用来读取数值类型的数据 int
    res = conf.getint("mysql",'port')
    #方法三 getfloat 专门用来读取浮点数 float
    res3 = conf.getfloat("mysql","n")
    #方法四 getboolean 专门用来读布尔值 False false都支持
    res4 = conf.getboolean()               

    配置文件内部编写格式

    [log]
    level = DEBUG
    fh_level = WARNING
    filename = all.log
    sh_level = DEBUG
    
    [mysql]
    host = 127.0.0.1
    port = 3306
    n = 17.01
    b = 89
    b1 = True
    b2 = False
    b3 = true
    b4 = false
    addicated= 阿迪
    
    dict1 = {"a":1,"b":666}
    

    配置文件的写入操作(基本不用)

    第一步创建一个配置文件解析器对象
    conf = ConfigParser()
    第二 将配置文件读取搭配配置文件解析器对象中
    conf.read('配置文件',encoding='utf-8')
    第三 配置文件内容写入
    conf.write(fp=open("lemon01.ini", "w", encoding="utf-8"))

    完整代码

    from configparser import ConfigParser
    
    
    class HandleConfig(ConfigParser):
        """配置文件解析器类的封装"""
    
        def __init__(self, filename):
            super().__init__()
            self.read(filename, encoding="utf8")
    
    
    conf = HandleConfig("config.ini")
    
    res = conf.get("mysql", "port")
    print(res)

    yaml类型文件形式存取数据

    此处只记述读取,yaml类型文件做测试用例进行数据驱动留作后面更新内容。

    import yaml
    # yaml格式文件的操作模块: pyyaml
    # 安装命令: pip install pyyaml
    with open("lemon.yaml", "r", encoding="utf-8") as f:
        file = yaml.load(f, Loader=yaml.FullLoader)
        print(file)
    

    框架模型的搭建

    搭建自动化测试框架首先要考虑好技术的选型,

    从几个大的层面来去构想需要准备哪些模块,哪些功能。

    举个例子:

    excel读取 + ddt + unittest + log + beautifulReport/HTMLtestrunnerReport + jenkins

    根据应用到的技术逐一分析最终成型的框架结构

    --用例数据 xlsx 文件

    --excel操作模块

    --日志模块

    --ddt数据驱动模块

    --测试用例模块

    --测试运行程序入口文件(启动文件

    输出

    日志记录文件

    测试报告文件

    之后针对项目文件,按功能做分层设计目录,大致分为几类

    1,自己封装的一些模块,common下存储

    2,测试用例模块,testcases存储

    3,使用到的第三方库文件 lib下存储

    4,测试报告文件 reports

    5,log记录文件

    6,测试启动入口  run_test.py

    image.png

    如图所示,之后就可以愉快的编写用例类实现了~

  • 相关阅读:
    Cisco 路由器硬件信息(各种序列号)查询命令
    解析黑客利用交换机漏洞攻击的常用手段
    所有windows操作系统键盘操作
    [转载]UC黑话解释Cisco统一通信江湖黑话解释
    常用照片尺寸和纸张尺寸参考
    Word中如何選擇從向文字
    python基础数据类型元组(tuple)
    promiseAll 使用
    js JavaScript 封装异步函数并被调用
    promise 学习2
  • 原文地址:https://www.cnblogs.com/addicated/p/13194398.html
Copyright © 2020-2023  润新知