本次主要是对登陆的接口测试post请求,希望记录在博客里面,一点一点的成长。

package com.ju.Login;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.HashMap; public class URLConnection { public static String GetResponse(String Info) throws IOException
{
String path = "http://192.1#.10.42:#/web_shiro_oracle/login.do"; //1, 得到URL对象
URL url = new URL(path); //2, 打开连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection(); //3, 设置提交类型
conn.setRequestMethod("POST"); //4, 设置允许写出数据,默认是不允许 false
conn.setDoOutput(true);
conn.setDoInput(true);//当前的连接可以从服务器读取内容, 默认是true //5, 获取向服务器写出数据的流
OutputStream os = conn.getOutputStream();
//参数是键值队 , 不以"?"开始
os.write(Info.getBytes());
//os.write("googleTokenKey=&username=admin&password=5df5c29ae86331e1b5b526ad90d767e4".getBytes());
os.flush();
//6, 获取响应的数据
//得到服务器写回的响应数据
BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream(),"utf-8"));
String str = br.readLine();
System.out.println("响应内容为: " + str); return str;
} }

  

package com.ju.Test;

import java.io.IOException;

import org.testng.Assert;
import org.testng.Reporter;
import org.testng.annotations.Test; import com.ju.Login.URLConnection; public class LoginTest { String userName;
String Pwd;
String googleTokenKey;
URLConnection get=new URLConnection();
@Test(groups = { "BaseCase"})
public void Login_succ() throws IOException{ //googleTokenKey=null;
//userName="admin";
//Pwd="5df5c29ae86331e1b5b526ad90d767e4";
String Info="googleTokenKey"+"="+""+"&"+"username"+"="+"admin"+"&"+"password"+"="+"5df5c29ae86331e1b5b526ad90d767e4";
Reporter.log(get.GetResponse(Info));
Reporter.log(Info);
/*Reporter.log("【正常用例】:获取"+exp_city+"天气成功!");
httpResult=weather.getHttpRespone(cityCode);
Reporter.log("请求地址: "+weather.geturl());
Reporter.log("返回结果: "+httpResult);
weatherinfo=Common.getJsonValue(httpResult, "weatherinfo");
city=Common.getJsonValue(weatherinfo, "city");
Reporter.log("用例结果: resultCode=>expected: " + exp_city + " ,actual: "+ city);
Assert.assertEquals(city,exp_city);*/
}
@Test(groups = { "BaseCase"})
public void username_fail() throws IOException{ //googleTokenKey=null;
//userName="admin";
//Pwd="5df5c29ae86331e1b5b526ad90d767e4";
String Info="googleTokenKey"+"="+""+"&"+"username"+"="+"admin1"+"&"+"password"+"="+"5df5c29ae86331e1b5b526ad90d767e4";
Reporter.log(get.GetResponse(Info));
Reporter.log(Info);
/*Reporter.log("【正常用例】:获取"+exp_city+"天气成功!");
httpResult=weather.getHttpRespone(cityCode);
Reporter.log("请求地址: "+weather.geturl());
Reporter.log("返回结果: "+httpResult);
weatherinfo=Common.getJsonValue(httpResult, "weatherinfo");
city=Common.getJsonValue(weatherinfo, "city");
Reporter.log("用例结果: resultCode=>expected: " + exp_city + " ,actual: "+ city);
Assert.assertEquals(city,exp_city);*/
}
@Test(groups = { "BaseCase"})
public void pwd_fail() throws IOException{ //googleTokenKey=null;
//userName="admin";
//Pwd="5df5c29ae86331e1b5b526ad90d767e4";
String Info="googleTokenKey"+"="+""+"&"+"username"+"="+"admin"+"&"+"password"+"="+"5df5c29ae86331e1b5b526ad90d767e";
Reporter.log(get.GetResponse(Info));
Reporter.log(Info);
/*Reporter.log("【正常用例】:获取"+exp_city+"天气成功!");
httpResult=weather.getHttpRespone(cityCode);
Reporter.log("请求地址: "+weather.geturl());
Reporter.log("返回结果: "+httpResult);
weatherinfo=Common.getJsonValue(httpResult, "weatherinfo");
city=Common.getJsonValue(weatherinfo, "city");
Reporter.log("用例结果: resultCode=>expected: " + exp_city + " ,actual: "+ city);
Assert.assertEquals(city,exp_city);*/
} }

  

然后以TestNG运行loginTest,接着去项目保存的路径下面找到下面箭头标识的文件夹,点击index.html,就可以看到详细的log

Java的post请求-----接口测试的更多相关文章

  1. Java的get请求-----接口测试

    package findyou.Interface; import java.net.HttpURLConnection; import java.net.URL; public class URLC ...

  2. java自动化测试-http请求结合抓包工具实际应用

    继上文我编写了java的get请求与post请求之后,我现在开始写一下实际操作 很多人有疑问,接口测试的代码是哪里来的,怎么来的呢?看得见吗?我来做一个简单的演示 我们这里简单介绍一下抓包工具,对于一 ...

  3. Java发送Http请求并获取状态码

    通过Java发送url请求,查看该url是否有效,这时我们可以通过获取状态码来判断. try { URL u = new URL("http://10.1.2.8:8080/fqz/page ...

  4. java 实现https请求

    java 实现https请求 JSSE是一个SSL和TLS的纯Java实现,通过JSSE可以很容易地编程实现对HTTPS站点的访问.但是,如果该站点的证书未经权威机构的验证,JSSE将拒绝信任该证书从 ...

  5. 第三篇 :微信公众平台开发实战Java版之请求消息,响应消息以及事件消息类的封装

    微信服务器和第三方服务器之间究竟是通过什么方式进行对话的? 下面,我们先看下图: 其实我们可以简单的理解: (1)首先,用户向微信服务器发送消息: (2)微信服务器接收到用户的消息处理之后,通过开发者 ...

  6. 通过java发送http请求

    通常的http请求都是由用户点击某个连接或者按钮来发起的,但是在一些后台的Java程序中需要发送一些get或这post请求,因为不涉及前台页面,该怎么办呢? 下面为大家提供一个Java发送http请求 ...

  7. 深入浅出Java 重定向和请求转发的区别

    深入浅出Java 重定向和请求转发的区别 <span style="font-family:FangSong_GB2312;font-size:18px;">impor ...

  8. 上curl java 模拟http请求

    最近,我的项目要求java模拟http请求,获得dns解决 tcp处理过的信息特定的连接. java api提供urlConnection apache提供的httpClient都不能胜任该需求,二次 ...

  9. 使用SoapUI工具做get请求和post请求接口测试

    祝大家节日快乐啦. 之前写过的一篇帖子已经介绍了SoapUI工具的基本使用,所以在此不再重复讲解关于建工程.建测试套件.添加用例等操作,可查看该篇文章详解:http://www.cnblogs.com ...

随机推荐

  1. AtCoder Petrozavodsk Contest 001 B - Two Arrays

    Time limit : 2sec / Memory limit : 256MB Score : 300 points Problem Statement You are given two inte ...

  2. JvisualVm添加远程监控

    一.Weblogic远程监控 1.首先需要在远程的weblogic的域下面,找到/bin/ setDomainEnv.sh ,需要在此文件下加入如下内容: -Dcom.sun.management.j ...

  3. PHP数组编码转换

    因为一些特殊字符的显示效果的原因不得不把习惯的utf-8工程改成了GBK,由于使用了ajax技术,又涉及到了老问题——编码转换. 一些表单验证需要返回json数据,php的json_encode函数只 ...

  4. Python collections系列之单向队列

    单向队列(deque) 单项队列(先进先出 FIFO ) 1.创建单向队列 import queue q = queue.Queue() q.put(') q.put('evescn') 2.查看单向 ...

  5. DIY ESXI虚拟化服务器再度升级ESXI6.0 (U盘安装Esxi)

    前期我写了一个篇关于<IT屌丝DIY ESXI虚拟化服务器记实 >链接地址:http://lidongni.blog.51cto.com/2554605/1643996,这次主要是在原有的 ...

  6. 把Azure专线从Class模式迁移到ARM模式

    前面几篇文章介绍了Azure的ASM模式和ARM模式.很多用户已经在ASM模式下部署了Azure的专线服务,如果部署的应用是ARM模式,或ASM模式和ARM模式都有,就需要把ASM模式的专线迁移到AR ...

  7. svn更新报错:出现skipped:目标路径

    skipped 意为:跳过此目标文件: 一般出现在目标文件被删除后,重新更新情况下: 解决办法及结果: 1,回到此目标文件的上一层文件夹,team-clean up,结果不成功 2,回到此目标文件的上 ...

  8. 机器学习:PCA(基础理解、降维理解)

    PCA(Principal Component Analysis) 一.指导思想 降维是实现数据优化的手段,主成分分析(PCA)是实现降维的手段: 降维是在训练算法模型前对数据集进行处理,会丢失信息. ...

  9. [置顶] getenv、setenv函数(获取和设置系统环境变量) 与 环境变量

    1.getenv() 函数名: getenv 功 能: 从环境中取字符串,获取环境变量的值 头文件: stdlib.h 用 法:char *getenv(char *envvar); 函数说明:get ...

  10. react过渡动画效果的实现,react-transition-group

    本文介绍react相关的过渡动画效果的实现 有点类似vue的transition组件,主要用于组件mount和unmount之前切换时应用动画效果 安装 cnpm install react-tran ...