Python实现自动化测试工具

1.需求

我们有个业务需求A,需要调三个Http接口(h1,h2,h3)完成,其中h3请求需要拿h2的返回值的某个key的值,这里我实现了一个很方便的自动化工具,下面看怎么利用工具配置实现这个流程。

2.清单主配置

{
    "env": ["腾讯云", "Docker"],
    "env-domain": ["腾讯云接口域名", "Docker接口域名"],
    "env-login-url": [
        "腾讯云环境登录url",
        "Docker环境登录url"
    ],
    "env-login-account": [
        {"accounts": "腾讯云环境账号", "password": "腾讯云环境密码"},
        {"accounts": "Docker环境账号", "password": "Docker环境密码"}
    ],
    "func": [{
        "desc": "新增子活动完整流程-小佳维护",
        "events":[
            {
                "alias":"AAA",
                "method": "/lyadmin/parentActivity/insert.json",
                "body":"$file{新增主活动.yml}",
                "page-input": [
                    {"name": "主活动开始时间:", "key": "activityStartTime", "def-val": "2019-11-28 17:36:00"},
                    {"name": "主活动结束时间:", "key": "activityEndTime", "def-val": "2019-11-28 18:36:00"}
                ]
            },{
                "alias":"BBB",
                "method": "/lyadmin/parentActivity/selectActivityManagerList",
                "body":"$file{查询主活动.yml}",
                "page-input": []
            },{
                "alias":"CCC",
                "method": "/lyadmin/childActivity/insert.json",
                "body":"$file{新增子活动.yml}",
                "ref-input":[
                    {"ref":"BBB.['data']['datas'][0]['id']","in-key":"['parentActivityId']"}
                ]
            }
        ]
    }]
}
  • env : 多环境配置
  • env-domain : 接口的域名
  • env-login-url: 登录的url
  • env-login-account: 登录账号信息
  • func: 定义功能
  • desc:功能的描述
  • events: 定义一个访问接口的流程链条
  • alias: 单个接口的别名(必须唯一)
  • method: 接口的url(不包括域名)
  • body:接口的参数(参数可能很长,单独拉出文件)
  • page-input: 页面输入的动态参数
  • ref-input: 接口的输入参数 指定是 上面接口 的返回值

3.各接口的请求参数yml配置文件

Python实现自动化测试工具_第1张图片

这里我截图了一个例子,里面 $#{ python代码块}#$  可用用来调用python代码来生成结果,进行参数替换。

4.程序运行

Python实现自动化测试工具_第2张图片
代码加我qq(657455400)找我就行,因为代码涉及到登录的密码不放在网上。

你可能感兴趣的:(python)