这是接口文档中的一部分截图,通过该接口的测试,使用Posman和eclipse 进行接口测试。
1.使用posman进行接口测试
打开posman,如下图:
根据接口文档上选择1中的请求方式,常用的请求方式有:post和get请求; 在2中输入URL;如果需要传递Cookie,在Headers中添加参数,比如3中的参数,Cookie中的参数在浏览器Network-header-cookie
因为需求文档需要传递请求参数,所以在body中添加参数:
选择4后在5处输入请求参数,不清楚可以在浏览器中查找,如下图:
package com.lemon.api_auto_7;
import java.io.IOException;
import java.util.ArrayList;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;
public class Demo01 {
public static void main(String[] args) throws ClientProtocolException, IOException {
// TODO Auto-generated method stub
String url="http://192.168.5.140:9030//SurveyMaster/element/line/query";
HttpPost post=new HttpPost(url);
//准备测试数据
int currentPage=1;
int pageSize=30;
String taskid="18c4ee89-b855-495e-bd6e-e26fe3cc2003";
String Cookie="__guid=220144857.1059028906228262300.1570676362765.518; "
+ "UM_distinctid=16db39b4ef321b-0ddd457bdeeb81-454c092b-1fa400-16db39b4ef4212; localeValueTemp=undefined; remb=0; "
+ "n_p_value=; lang=zh_CN; JSESSIONID=F7999072DAD38879EB2B00AE363059D8; CNZZDATA1277120178=966510258-1570672448-%7C1570703127; localeCookie=\"\"; "
+ "loginSysCookie=d1eb87d3-64d7-44c4-905a-bfd1ed29cb45#25abf03a-9923-4e2d-9b03-eccfb19ef16e#42#3; monitor_count=28;"
+ " _cnzz_CV1277120178=42%7C%E6%99%AE%E9%80%9A%E7%94%A8%E6%88%B7%7C0";
post.addHeader("Cookie", Cookie);//添加Cookie
java.util.List<BasicNameValuePair> parameters=new ArrayList<BasicNameValuePair>();
parameters.add(new BasicNameValuePair("taskid", taskid));
parameters.add(new BasicNameValuePair("currentPage",String.valueOf(currentPage)));
parameters.add(new BasicNameValuePair("pageSize",String.valueOf(pageSize)));
post.setEntity(new UrlEncodedFormEntity(parameters, "UTF-8"));//设置参数到请求体
HttpClient client=HttpClients.createDefault();
HttpResponse response=client.execute(post);
//获取状态码
int code=response.getStatusLine().getStatusCode();
//获取报文信息
String resual=EntityUtils.toString(response.getEntity());
HttpEntity httpentity=response.getEntity();
System.out.println("状态码是:"+code);
System.out.println("报文信息:"+httpentity);
System.out.println("报文信息:"+resual);
}
}