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                        进度条显示当前的传送状态

 

转载于:https://www.cnblogs.com/VVsky/p/10265846.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/395455.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第50次二级c语言真题,2006年4月全国计算机等级考试二级C语言笔试试卷含答案

一、选择题((1)一(10)每题2分&#xff0c;(11)一(50)每题1分&#xff0c;共60分)下列各题A)、B)、C)、D)四个选项中&#xff0c;只有一个选项是正确的&#xff0c;请将正确选项涂写在答题卡相应位置上&#xff0c;答在试卷上不得分。(1)下列选项中不属于结构化程序设计方法的是…

python hashlib模块

摘要算法简介 Python的hashlib提供了常见的摘要算法&#xff0c;如MD5&#xff0c;SHA1等等。 什么是摘要算法呢&#xff1f;摘要算法又称哈希算法、散列算法。它通过一个函数&#xff0c;把任意长度的数据转换为一个长度固定的数据串&#xff08;通常用16进制的字符串表示&…

go tool trace goalng调优工具

为什么80%的码农都做不了架构师&#xff1f;>>> 你想知道你的Go程序在做什么吗&#xff1f; go tool trace 可以向你揭示&#xff1a;Go程序运行中的所有的运行时事件。 这种工具是Go生态系统中用于诊断性能问题时&#xff08;如延迟&#xff0c;并行化和竞争异常…

程序员 文本编辑器 c语言,程序员必备的五款文本编辑器

原标题&#xff1a;程序员必备的五款文本编辑器程序员的工作离不开文本编辑器&#xff0c;有人说一个txt就能搞定&#xff0c;但txt面对如今复杂的要求&#xff0c;明显有些捉襟见肘&#xff0c;下面推荐五款超级好用的文本编辑器及搭配软件&#xff0c;绝对是程序员的大爱。程…

PCH文件的创建和配置

1.PCH文件的的创建 (1)CommandN (2)打开新建文件窗口:ios->other->PCH file&#xff0c;创建一个pch文件 2.PCH文件的配置 (1)在工程的TARGETS里边Building Setting中搜索Prefix Header (2)然后在Precompile Prefix Header下边的Prefix Header右边双击&#xff0c;添加刚…

android限制输入字符的范围,Android EditText 对输入字数和内容范围进行限制

在做定制机时&#xff0c;对光敏值进行范围控制时&#xff0c;以及对区号输入时遇到对输入字数以及输入内容的显示。找了好多方法&#xff0c;终于找到了几种方法其中EditText的addTextChangedListener功不可没。例如对光敏值要在0到61之间。大于61时要在输入框中自动变为61.代…

Sass:一种CSS预处理器语言

http://sass-lang.com/ Sass是一种CSS预处理器语言&#xff0c;通过编程方式生成CSS代码。因为可编程&#xff0c;所以操控灵活性自由度高&#xff0c;方便实现一些直接编写CSS代码较困难的代码。 同时&#xff0c;因为Sass是生成CSS的语言&#xff0c;所以写出来的Sass文件是不…

视觉智能产品发布 阿里云这项世界第一的技术现在人人可用

用手机拍下朋友的相片&#xff0c;软件会自动识别进行分类并将照片发送给朋友。这不是空想&#xff0c;利用视觉智能对手机相册进行管理、分类和分享正逐步成为现实。在6月10日举行的云栖大会上海峰会上&#xff0c;阿里云正式发布了“图像识别”和“人脸识别”两款视觉智能服务…

ViewPager中Fragment的重复创建、复用问题

在ViewPager中的Fragment的生命周期 随着页面的切换 当前的展示页相邻的页面生命周期一直在变化 一开始 刚进入Activity时候&#xff0c;ViewPager默认初始化好前两个Fragment&#xff08;消息和任务&#xff09; 消息 ->任务 05-09 14:47:39.593 31509-31509/tyh.com.tabl…

linux hlist,linux内核V2.6.11学习笔记(2)--list和hlist

这两个数据结构在内核中随处可见,不得不拿出来单独讲讲.这两个数据结构都是为了方便内核开发者在使用到类似数据结构的时候不必自行开发(虽然不难),因此它们需要做到足够的"通用性",也就是说,今天可以用它们做一个存放进程的链表,明天同样可以做一个封装定时器的链表…

MSSQL分组取后每一组的最新一条记录

数据库中二张表&#xff0c;用户表和奖金记录表&#xff0c;奖金记录表中一个用户有多条信息&#xff0c;有一个生效时间&#xff0c;现在要查询&#xff1a; 奖金生效时间在三天前&#xff0c;每个用户取最新一条奖金记录&#xff0c;且用户末锁定 以前用的方法是直接写在C#代…

栈和递归的关系 144:Binary Tree Preorder Traversal

前序遍历&#xff1a;根左右 //用栈来实现非递归解法/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/ class Solution { public:vec…

精确覆盖DLX算法模板

代码 struct DLX {int n,id;int L[maxn],R[maxn],U[maxn],D[maxn];int C[maxn],S[maxn],loc[maxn][2];void init(int nn0) //传列长{nnn;for(int i0;i<n;i) U[i]D[i]i,L[i]i-1,R[i]i1;L[0]n; R[n]0;idn;memset(S,0,sizeof(S));}void AddRow(int x,int col,int A[]) //传入参…

华为OV小米鸿蒙,华为鸿蒙开源,小米OV们会采用吗?

华为曾一直声言不会进入电视市场,由此其他国产电视企业才会采用华为的可见企业是非常担忧同业竞争关系的,而在智能手机市场,华为毫无疑问与其他国产手机企业都是竞争对手,更何况就在2019年下半年和2020年上半年华为在国内手机市场的份额超过四成直逼五成,其他国产手机企业被压得…

android studio 7200u,#本站首晒# 多图杀猫 华为MateBook X上手体验

#本站首晒# 多图杀猫 华为MateBook X上手体验2017-06-09 18:45:4437点赞33收藏78评论前几天华为开了个发布会&#xff0c;带来了三款笔记本电脑&#xff0c;有幸在第一时间借到了MateBook X&#xff0c;现在就来来做一个简单的上手&#xff0c;稍晚一些再跟大家详细聊聊使用起来…

svn强制解锁的几种做法

标签&#xff1a; svn强制解锁2013-12-16 17:40 12953人阅读 评论(0) 收藏 举报分类&#xff1a;SoftwareProject&#xff08;23&#xff09; 版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主允许不得转载。 作者&#xff1a;朱金灿 来源&#xff1a;http://blog.…

《Android 应用案例开发大全(第二版)》——导读

本节书摘来自异步社区《Android 应用案例开发大全&#xff08;第二版&#xff09;》一书中的目录 &#xff0c;作者 吴亚峰 , 于复兴 , 杜化美&#xff0c;更多章节内容可以访问云栖社区“异步社区”公众号查看 目 录 第1章 初识庐山真面目——Android简介 1.1 Android的诞生 1…

匿名方法

与前面的可空类型是一样的&#xff0c;匿名方法也是C# 2.0里面提出来的。 1 匿名方法 1.1 什么是匿名方法&#xff1f; 顾名思义&#xff0c;就是没有名称的方法&#xff0c;因为没有名称&#xff0c;匿名方法只能在函数定义&#xff08;匿名方法是把方法的实现和定义嵌套在了一…

JNI通过线程c回调java层的函数

1、参看博客&#xff1a;http://www.jianshu.com/p/e576c7e1c403 Android JNI 篇 - JNI回调的三种方法&#xff08;精华篇&#xff09; 2、参看博客&#xff1a; JNI层线程回调Java函数关键点及示例 http://blog.csdn.net/fu_shuwu/article/details/41121741 3 http://blog.cs…

构建微服务:Spring boot 入门篇

Spring官方网站本身使用Spring框架开发&#xff0c;随着功能以及业务逻辑的日益复杂&#xff0c;应用伴随着大量的XML配置文件以及复杂的Bean依赖关系。随着Spring 3.0的发布&#xff0c;Spring IO团队逐渐开始摆脱XML配置文件&#xff0c;并且在开发过程中大量使用“约定优先配…