• shell 本地接口自动化


    一.基于http/https的接口

    一般情况下,当前大多公司在做接口自动化的时候都会使用一些工具;比如:postman/jmeter/python自研开发接口平台。。。

    以上的情况,都是在源码与测试使用分离的情况下实践的。也就是说:目前国内还很少有存在google的类似岗位SET。

    由于公司开发了一套测试框架是基于源码实现的,那么就需要将其他接口工具内的脚本或者其他纯脚本代码移植都该框架内,框架与源码是在同一个git。通俗的讲:即测试是产品的一部分功能。

    这点,google做的很好,参见《google测试之道》

    二.实现方式基于curl

    1.定义全局变量

    ip:ip地址,以上为获取本机ip

    captcha:验证码初始化

    mainHost:公共url 

    chrome/ContentType/XRequestedWith:header部分,可以适当增减

    2.curl-post请求

    a)获取cookie

    getLogin:登录功能,并获取cookie

    hostApi:api 路径

    apiName:获取api方法名

    data:post请求的参数

    expect:期待返回的值

    成功:返回True

    失败:返回False

    b)请求数据---结果正则匹配

     $1:api路径名

     $2:post请求参数

     $3:期望值---此为正则匹配

    c)请求数据---结果全值匹配

    三.执行

    四.结果保存文件

     五.Curl常见参数

    -A/--user-agent <string>              设置用户代理发送给服务器
    -b/--cookie <name=string/file>    cookie字符串或文件读取位置
    -c/--cookie-jar <file>                    操作结束后把cookie写入到这个文件中
    -C/--continue-at <offset>            断点续转
    -D/--dump-header <file>              把header信息写入到该文件中
    -e/--referer                                  来源网址
    -f/--fail                                          连接失败时不显示http错误
    -o/--output                                  把输出写到该文件中
    -O/--remote-name                      把输出写到该文件中,保留远程文件的文件名
    -r/--range <range>                      检索来自HTTP/1.1或FTP服务器字节范围
    -s/--silent                                    静音模式。不输出任何东西
    -T/--upload-file <file>                  上传文件
    -u/--user <user[:password]>      设置服务器的用户和密码
    -w/--write-out [format]                什么输出完成后
    -x/--proxy <host[:port]>              在给定的端口上使用HTTP代理
    -#/--progress-bar                        进度条显示当前的传送状态
  • 相关阅读:
    java 前端--Jquery表单验证
    java基础--IO流(3)
    工具的使用与安装--myeclipse项目导入eclispse中的设置
    洛谷 P2697 宝石串
    洛谷 P2145 [JSOI2007]祖码
    洛谷 P1005 矩阵取数游戏
    洛谷 P3205 [HNOI2010]合唱队
    洛谷 P1220 关路灯
    POJ 2152 Fire
    洛谷 P1043 数字游戏
  • 原文地址:https://www.cnblogs.com/VVsky/p/10265846.html
Copyright © 2020-2023  润新知