写点什么

软件测试 / 测试开发丨两个步骤轻松搞定测试环境问题

作者:测试人
  • 2023-04-06
    北京
  • 本文字数:704 字

    阅读完需:约 2 分钟

公众号搜索:TestingStudio 霍格沃兹测试开发的干货都很硬核

在实际的工作中,绝大部分公司都至少有 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 headerenv={    "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 格式的配置文件。

发布于: 刚刚阅读数: 4
用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨两个步骤轻松搞定测试环境问题_软件测试_测试人_InfoQ写作社区