zoukankan      html  css  js  c++  java
  • 接口测试框架实战(二) | 搞定多环境下的接口测试

    本文节选自霍格沃玆测试学院内部教材,进阶学习,文末加群!

    在实际的工作中,绝大部分公司都有至少 3
    个以上的环境,供测试与研发人员使用。测试人员不可能为每个环境都准备一个自动化测试脚步,因为这样的维护成本太过庞大。所以,要解决这个问题,就需要做到设计一套脚本,可以在各个环境上面运行。

    实战演示

    在之前的文章
    《基于加密接口的测试用例设计》
    中,提到过的字典结构体的基础上进行改造,将
    URL 从一个写死的 IP 地址改为一个域名。

     req_data={  
                "schema": "http",  
                "method": "get",  
                "url": "http://docker.testing-studio.com:10000/demo64.txt",  
                "headers":  
                {"Host":None}  
            }  
    

    然后,我们还需要另外一个字典结构体去存储环境的配置。

    这里使用env变量存放一个字典结构体的环境配置。然后将请求结构体中的 URL 替换为env配置文件中个人选择的
    URL。先用env["docker.testing- studio.com"]读到全部的环境配置选项,再使用改变[env["default"]]中的选择,去切换不同的环境。

    #把host修改为ip,并附加host header  
    env={  
        "docker.testing-studio.com": {  
            "dev": "127.0.0.1",  
            "test": "1.1.1.2"  
        },  
        "default": "dev"  
    }  
    data["url"]=str(data["url"]).replace(  
        "docker.testing-studio.com",  
        env["docker.testing-studio.com"][env["default"]]  
    )  
    data["headers"]["Host"]="docker.testing-studio.com"  
    

    由上面两个步骤就可以将环境的切换作为一个可配置的选项,根据需求,很方便的去切换不同的使用环境。不过目前这样的解决办法依然是写在代码中,不够优雅,在后面会讲解如何将env变量中的配置信息转换为一个
    YAML 格式的配置文件。

    以上,更多接口测试框架实战进阶内容,我们在后续文章分享。关注 「 霍格沃兹测试学院 」公众号,获取更多测试开发干货内容。


    来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力
    QQ交流群:484590337
    公众号 TestingStudio
    点击获取更多信息

  • 相关阅读:
    2014年7顶级编程语言一个月
    Swift学习 --- 2.3和字符串
    自己写CPU第五级(4)——逻辑、实现移动和空指令
    读书笔记-互联网思维阅读10其中一本书《自由》
    Linux学习笔记——如何使用共享库交叉编译
    Vim识别编码
    linux RWT
    GConf 错误:联系配置服务器失败;某些可能原因是需要为 ORBit 启用 TCP/IP 联网
    Mysql 表忽略大小写~~
    andorid studio
  • 原文地址:https://www.cnblogs.com/hogwarts/p/15842261.html
Copyright © 2011-2022 走看看