Junit接口测试

//用到的方法

package interfaceTest_1;

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.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.List;

/**
 * Created by Ethan on 2015/5/12.
 */
public class HTTPUtil {
    public static String postJson(String uri, String params) {
        HttpClient httpclient = new DefaultHttpClient();
        String backstr = null;
        try {
            HttpPost postMethod = new HttpPost(uri);
            postMethod.setEntity(new StringEntity(params, "utf-8")); // 灏嗗弬鏁板~鍏OST
            postMethod.setHeader("Content-Type", "application/json; charset=utf-8");
            HttpResponse response = httpclient.execute(postMethod); // 鎵цPOST鏂规硶
            backstr = EntityUtils.toString(response.getEntity(), "utf-8");
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return backstr;

    }

    public static String dopost(String uri, List<BasicNameValuePair> params) {
        HttpClient httpclient = new DefaultHttpClient();
        String backstr = null;
        try {
            HttpPost postMethod = new HttpPost(uri);
            postMethod.setEntity(new UrlEncodedFormEntity(params, "utf-8")); // 灏嗗弬鏁板~鍏OST
            // Entity涓?
            postMethod.setHeader("Content-Type",
                    "application/x-www-form-urlencoded; charset=utf-8");

            HttpResponse response = httpclient.execute(postMethod); // 鎵цPOST鏂规硶
            backstr = EntityUtils.toString(response.getEntity(), "utf-8");

        } catch (UnsupportedEncodingException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return backstr;

    }
}

//回包处理

package Vo;

public class ResVo {
    private String data;
    private Integer result;
    private String msg;
    public String getData() {
        return data;
    }
    public void setData(String data) {
        this.data = data;
    }
    public Integer getResult() {
        return result;
    }
    public void setResult(Integer result) {
        this.result = result;
    }
    public String getMsg() {
        return msg;
    }
    public void setMsg(String msg) {
        this.msg = msg;
    }

}

//JSON格式上传测试

package junitTest;

import java.util.HashMap;
import java.util.Map;
import org.junit.Test;
import com.alibaba.fastjson.JSON;
import Vo.ResVo;
import interfaceTest_1.HTTPUtil;

public class XXX {

  //........
  @Test
  public void saveUserRatio(){
   int groupId=7;
   int babyId = 5;
   String website = "http://192.168.1.109/iftest/xxx.htm";
   Map<String,Object> m = new HashMap<String,Object>();
   Map<String,Object> a = new HashMap<String,Object>();
   m.put("groupId",groupId);
   a.put("babyId",babyId);
   m.put("a", a);
   String res = HTTPUtil.postJson(website,JSON.toJSONString(m));
   System.out.println(JSON.toJSONString(m));
   ResVo resVo = JSON.parseObject(res,ResVo.class);
   System.out.println(res);
   org.junit.Assert.assertSame(0, resVo.getResult());
  }

//接口需要上传图片的测试

package junitTest;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.http.message.BasicNameValuePair;
import org.junit.Test;
import com.alibaba.fastjson.JSON;
import Vo.ResVo;
import interfaceTest_1.HTTPUtil;

public class NotesTest {

    @Test
    public void notesSave(){
        String groupId="7";
        String pictureStatus = "0";
        String pictures = "1";
        String website = "http://192.168.1.101:8080/if/note.htm";
        Map<String,Object> m = new HashMap<String,Object>();
        List<BasicNameValuePair> params = new ArrayList<BasicNameValuePair>();
        params.add(new BasicNameValuePair("groupId",groupId));
        params.add(new BasicNameValuePair("note.pictureStatus", pictureStatus));
        params.add(new BasicNameValuePair("note.pictures", pictures));
        System.out.println(JSON.toJSONString(params));
        String res = HTTPUtil.dopost(website,params);
        ResVo resVo = JSON.parseObject(res,ResVo.class);
        System.out.println(res);
        org.junit.Assert.assertSame(0, resVo.getResult());
    }

}
时间: 2024-08-10 00:06:02

Junit接口测试的相关文章

Junit接口测试(2)

//使用JSON上传数组 1 package junitTest; 2 3 import java.util.ArrayList; 4 import java.util.HashMap; 5 import java.util.List; 6 import java.util.Map; 7 import org.junit.Test; 8 import com.alibaba.fastjson.JSON; 9 import Vo.ResVo; 10 import interfaceTest_1.H

Junit接口测试(3)

//将返回值的data部分序列化,取出某个参数进行assert 1 @Test 2 public void loginTest_diffDeviceToken(){ 3 String account = "xxxx"; 4 String password = "123456"; 5 Map<String,Object> m = new HashMap<String,Object>(); 6 m.put("account",

Junit(3)JUnit和单元测试入门简介

1.几个相关的概念 白盒测试--把测试对象看作一个打开的盒子,程序内部的逻辑结构和其他信息对测试人员是公开的. 回归测试--软件或环境的修复或更正后的"再测试",自动测试工具对这类测试尤其有用. 单元测试--是最小粒度的测试,以测试某个功能或代码块.一般由程序员来做,因为它需要知道内部程序设计和编码的细节. JUnit --是一个开发源代码的Java测试框架,用于编写和运行可重复的测试.他是用于单元测试框架体系xUnit的一个实例(用于java语言).主要用于白盒测试,回归测试. 2.

zTree实现地市县三级级联DAO接口测试

ProvinceDaoTest.java: /** * @Title:ProvinceDaoTest.java * @Package:com.gwtjs.dao * @Description:省份地市县级三级级联DAO接口测试 * @author:Youhaidong(游海东) * @date:2014-5-10 下午11:13:43 * @version V1.0 */ package com.gwtjs.dao; import static org.junit.Assert.assertNo

zTree实现地市县三级级联Service接口测试

ProvinceServiceTest.java: /** * @Title:ProvinceServiceTest.java * @Package:com.gwtjs.service * @Description:TODO * @author:Youhaidong(游海东) * @date:2014-5-11 上午12:24:09 * @version V1.0 */ package com.gwtjs.service; import static org.junit.Assert.asser

基于Spring开发的DUBBO服务接口测试

基于Spring开发的DUBBO服务接口测试 知识共享主要内容: 1. Dubbo相关概念和架构,以及dubbo服务程序开发步骤. 2. 基于Spring开发框架的dubbo服务接口测试相关配置. 3. spring test+junit和spring test+TestNG两种测试框架脚本编写方法. 一.        DUBBO与DUBBO架构 1.          什么是dubbo?DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,是阿里巴巴SOA服务化治

JUnit + Mockito 单元测试(二)

JUnit 是单元测试框架.Mockito 与 JUnit 不同,并不是单元测试框架(这方面 JUnit 已经足够好了),它是用于生成模拟对象或者直接点说,就是"假对象"的工具.两者定位不同,所以一般通常的做法就是联合 JUnit + Mockito 来进行测试. 入门 首先是配置 Mock 对象,看看例子怎么写的. [java] view plain copy List mock = mock( List.class ); when( mock.get(0) ).thenReturn

基于python的接口测试学习笔记一(初出茅庐)

第一次写博客笔记,讲一下近来学习的接口自动化测试.网上查阅了相关资料,最后决定使用python语言写接口测试,使用的是python的第三方库requests.虽然python本身标准库中的 urllib2 模块提供了你所需要的大多数 HTTP 功能.但requests更好用简单.果断入门学习. 新手入门,代码比较简单 import requests import unittest class apiTest(unittest.TestCase): def setUp(self): self.ba

junit框架——单元测试

对于一名测试工程师来说如果不能进行单元测试.接口测试,是非常遗憾的:因为功能测试只能占到测试收益的5%,强化代码能力对于目前的我们来说至关重要,我认为一名测试工程师至少要是一个中级以上的开发工程师,当然我也在努力朝着这个方向迈进,我们共勉: 第一步:安装eclipse,百度搜索官网直接下载最新版本,此软件为免费开源: 第二步:创建包cn.junit4创建一个Calculator类,代码如下: package cn.junit4; public class Calculator { public