【接口测试】接口概念及Json相关
一、接口相关概念
1.什么是接口?
接口:接口就是系统A程序中留的其他系统B访问系统A的接口(实际上是系统某个代码文件下某一个可访问的方法。)。其他系统B可以调用这个方法a对系统A中的方法a进行访问从而达到访问系统A中方法a中内容的目的。
2.接口访问方式。
一般通过接口连接进行访问。
3.接口连接的组成:系统A的访问网址(http://cloud.pingnanlearning.com/)+访问方法中定义的访问路径(或者说方法名)(/a/b/c/d),+方法中需要传递的参数(e,f,g),用/隔开(一个接口访问链接的举例:http://cloud.pingnanlearning.com//a/b/c/d/参数e对应传值/参数f对应传值/参数g对应传值)
4.在浏览器中输入接口链接,浏览器中会显示出来浏览器解析出来的json流,我们可以通过bejson网站转化json语言成段落清晰的语言,其实就是回车换行成更直观好看的段落。——解析成的段落其实就是通过方法a查询出来的数据库中的结果哦~
————————————————————————————————————————————————————————————————————
二、接口(Loadrunner相关)
原来接口性能测试可以这么做。其实录制业务产生的脚本也可以简单的而理解为是由多个接口拼接再一起组成的,所以像参数化等技术都可以在接口测试中使用。
long file;
char *vusernum;
char t_result(1024);
vuser_init()
{
//获取编号
vusernum=lr_eval_string("_{vuserid}");
//获取系统时间
lr_save_datetime("%Y%m%d%H%M%S",DATE_NOW,"now_date");
//拼接测试结果文件名称
strcpy(t_result,"d://result/test");
strcat(t_result,lr_eval_string("_{now_date}");
strcat(t_result,vusernum);
strcat(t_result,".html");
//生成并打开测试结果文件
file=fopen(t_result,"at+");
//写入测试文件头部html信息
strcpy(t_result,"<html><table border='1'><tr>< td>描述</td><td>预期结果</td><td>实际结果</td><td>Y/N</td></tr>");
fputs(V_Result,file);
return 0;
}
Action()
{
char is_pass(1024);
int result;
char *para=lr_eval_string("{参数名}");
web_set_max_html_param_len("");
//取得服务器返回内容
web_reg_save_param("filecontent",
"LB=",
"RB=",
"Search=Body",
LAST);
//发送请求
web_submit_data("login",
"Action=URL地址",
"Method=POST",
"RecContentType=text/html",
"Referer=",
"Snapshot=t9.inf",
"Mode=HTTP",
ITEMDATA,
"Name=参数名","Value=参数值",ENDITEM,
LAST);
//比较预结果和实际结果
result=strcmp(lr_eval_string("{预期结果}"),
lr_eval_string("{filecontent}"));
if(result==0)
{
strcpy(is_pass,"通过");
}
else
{
strcpy(is_pass,"失败");
}
//写入测试参数
strcpy(t_result,"<tr><td>");
strcat(t_result,para);
strcat(t_result,"</td>");
//写入预期结果
strcat(t_result,"<td id='yq'>");
strcat(t_result,lr_eval_string("{filecontent}"));
strcat(t_resutl,"</td>");
//写入实际结果
strcat(t_result,"<td id='sj'>");
strcat(t_result,lr_eval_string("{filecontent}"));
strcat(t_resutl,"</td>");
//写入是否通过
strcat(t_result,"<td>");
strcat(t_result,is_pass);
strcat(t_result,"</td></tr>");
fputs(t_result,file); return 0;
}
vuser_end()
{
//结束
strcpy(t_result,"</table></html>");
fputs(t_result,file);
//关闭文件
fclose(file);
return 0;
}
【接口测试】接口概念及Json相关的更多相关文章
- SEO概念及SEO相关优化
SEO是英文Search Engine Optimization的缩写, 中文意译为“搜索引擎优化”. 简单地说, SEO是指从自然搜索结果获得网站流量的技术和过程. http://www.imooc ...
- CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 转载
CNA, FCoE, TOE, RDMA, iWARP, iSCSI等概念及 Chelsio T5 产品介绍 2016年09月01日 13:56:30 疯子19911109 阅读数:4823 标签: ...
- 常用的API接口,返回JSON格式的服务API接口
物流接口 快递接口: http://www.kuaidi100.com/query?type=快递公司代号&postid=快递单号 ps:快递公司编码:申通="shentong&qu ...
- 用javascript向一个网页连接接口发送请求,并接收该接口返回的json串
一般前端与后端的互交都是通过json字符串来互交的,我的理解就是与网页接口的来回数据传递采用的数据结构就是json.一般是这样. 比如后端的代码是这样的: @RequestMapping(value ...
- 关于http接口开发中json格式数据编码问题处理
关于http接口开发中json格式数据编码问题处理 在实际工作中,接口很多时候返回json格式,但有时返回的格式会有编码问题 假设如下接口:http://service.test.com/interf ...
- JSON API免费接口 各种提供JSON格式数据返回服务网站的API接口
这里为大家搜集了一些能够返回JSON格式的服务接口.部分需要用JSONP调用. 电商接口 京东获取单个商品价格接口: http://p.3.cn/prices/mgets?skuIds=J_商品ID& ...
- 『动善时』JMeter基础 — 35、JMeter接口关联【JSON提取器】详解
目录 1.JSON提取器介绍 2.JSON提取器界面详解 3.JSON提取器的使用 (1)测试计划内包含的元件 (2)HTTP Cookie管理器内容 (3)用户登陆请求界面内容 (4)JSON提取器 ...
- 原码,补码,反码的概念及Java中使用那种存储方式
原码,补码,反码的概念及Java中使用那种存储方式: 原码:原码表示法是机器数的一种简单的表示法.其符号位用0表示正号,用:表示负号,数值一般用二进制形式表示 补码:机器数的补码可由原码得到.如果机器 ...
- 转 RabbitMQ 基础概念及 Spring 的配置和使用 推荐好文 举例讲解
从不知道到了解—RabbitMQ 基础概念及 Spring 的配置和使用 原理同上 请求地址:http://localhost:8080/home?type=3&routing_key=myO ...
随机推荐
- List<T>与ObservableCollectio<T> 的区别
在WPF中绑定通常会使用ObservableCollection,为什么不使用List呢? 简单是解释:List不包含值变通知功能,所以绑定了也许会出现绑定的数据与呈现数据不一致的问题. 通常绑定会使 ...
- Spring Framework 官方文档学习(四)之Validation、Data Binding、Type Conversion(二)
接前一篇 Spring Framework 官方文档学习(四)之Validation.Data Binding.Type Conversion(一) 本篇主要内容:Spring Type Conver ...
- Strut2------获取界面返回的session,application,parameter
1.Action类下的代码 public class ServletActionDemo extends ActionSupport { @Override public String execute ...
- thinkphp nginx+phpcgj安装配置
环境:mysql-5.6.26 nginx-1.9.4.tar.gz php-5.6.13 程序框架ThinkPHP 客户要求必须使用nginx + php 1.首先安装n ...
- Linux之MySQL
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- M0 M4之Timer初始化
新唐的定时器一般有很多功能:普通的定时功能,事件计数功能,捕获功能,超时触发ADC等等.大家如果感兴趣可以读一下<NANOB Timer功能介绍以及在弱灌注中的应用.pdf>,虽然各个系列 ...
- 当div没有设置宽度,使用width的fit-content和margin:auto实现元素的水平居中
当我们做水平居中的时候,会有许多方法,margin:0 auto,或者test-align:center,以及flex布局.当元素的width不固定的时候,我们如何实现水平居中呢,代码如下: < ...
- vs2008设置dll、lib库的输出路径
vs2008中,有些项目上的功能是要生产库文件给其他项目调用的,以下是一些设置库文件(x.dll和x.lib)输出路径的方法. 设置x.dll 输出路径方法是在右键项目的"属性"- ...
- Chisel常用命令总结
Chisel简介 Chisel是Facebook开源的一款lldb调试工具,其实就是对系统lldb命令的封装,开发者可以通过简化的命令更方便的进行调试工作.开源地址:https://github.co ...
- jquery类似方法的比较(一)
1. $(div + p) & $(div ~ p) & $(div p) & $(div > p) $(div + p)选择紧挨在div后面的P元素 $(div ~ p ...