zoukankan      html  css  js  c++  java
  • 简单的接口测试

    引言:你好,我是handsomecui,下面介绍自己琢磨出的一种接口测试的方法。

    来由:网上的接口测试工具五花八门,想了想还是自己写的针对方法的测试,比较严谨,错误以及麻烦的地方欢迎大家留言指正。

    思路:本想着用junit来写的,但是 单元测试与webservice好像有冲突,然后就想着创建一个测试类,里面放各种方法的json测试传,通过浏览器传的方法名反射得到方法,以及json串。

    测试类的设计:自己创建json串,处理各种情况,具体方法创建各种测试串。

    下面是具体代码:

    package com.rrkj.test;
    
    import com.google.gson.JsonArray;
    import com.google.gson.JsonObject;
    
    public class LibraryTest {
        private JsonObject jsonObject = new JsonObject();
        private JsonObject jsonObject2 = new JsonObject();
        private JsonObject jsonObject3 = new JsonObject();
        private JsonObject jsonObject4 = new JsonObject();
        private JsonObject jsonObject5 = new JsonObject();
        private JsonArray jsonArray = new JsonArray();
        private JsonArray empArray = new JsonArray();
        
        
        public LibraryTest() {
            jsonObject3.addProperty("title", "新水浒传");
            jsonObject3.addProperty("author", "施耐庵");
            jsonObject3.addProperty("hold", "258");
            jsonObject5.addProperty("title", "西游记");
            jsonObject5.addProperty("author", "吴承恩");
            jsonObject5.addProperty("hold", "369");
            
            jsonArray.add(jsonObject3);
            //jsonArray.add(jsonObject3);
            //jsonArray.add(jsonObject5);
            
            jsonObject4.addProperty("sid", "3c77f0993c164de49d55512bd19991ee");
            jsonObject4.addProperty("uid", "27c1998783bb415d9bdbdb6a5dd4ebdd");
            jsonObject.add("session", jsonObject4);
        }
    
        //jsonObject2.add("books", jsonArray);
        //jsonObject2.addProperty("orderId", "6");
        //jsonObject2.addProperty("cardId", "2");
        //jsonObject2.addProperty("isPrepare", "1");
        //jsonObject2.addProperty("type", "1");
    
        public String borrow() throws Exception{
            jsonObject2.addProperty("orderId", "7");
            jsonObject2.addProperty("cardId", "2");
            jsonObject2.add("books", empArray);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
        
        public String managerList(){
            jsonObject2.addProperty("type", "1");
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String prepare(){
            jsonObject2.addProperty("orderId", "8");
            jsonObject2.addProperty("isPrepare", "1");
            jsonObject2.add("book", jsonObject5);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String returnBook(){
            jsonObject2.addProperty("cardId", "2");
            jsonObject2.add("books", jsonArray);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String orderAdd(){
            jsonObject2.add("book", jsonObject3);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String orderList(){
            return jsonObject.toString();
        }
    
        public String orderSubmit(){
            jsonObject2.add("books", jsonArray);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String orderHistory(){
            return jsonObject.toString();
        }
    
        public String orderDelete(){
            jsonObject2.add("book", jsonObject5);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String collectionAdd(){
            jsonObject2.add("book", jsonObject5);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        public String collectionList(){
            return jsonObject.toString();
        }
    
        public String collectionDelete(){
            jsonObject2.add("book", jsonObject5);
            jsonObject.add("data", jsonObject2);
            return jsonObject.toString();
        }
    
        
    }

    然后在webservice,反射调用就可以了:

    下面是webservice详细代码:

    public String test(String method) throws Exception{
            LibraryTest test = new LibraryTest();
            Method testMethod = this.getClass().getMethod(method, String.class);
            Method json = test.getClass().getMethod(method, null);
            testMethod.invoke(this, json.invoke(test, null));
            return this.JsonResponseWithoutData();
        }
  • 相关阅读:
    sql server 2008 r2安装详解 (转)
    SQL SERVER 与ORACLE常用函数比较(转)
    android色码对照表
    java小结
    如何查看android虚拟机的目录及文件
    java中的Serializable接口的作用
    android布局属性详解
    android 如何连接sqlserver数据库
    android 中Network error IOException: failed to connect to /127.0.0.1 (port 1433): connect failed: ECONNREFUSED (Connection refused)
    IDEA 将项目打包war包
  • 原文地址:https://www.cnblogs.com/handsomecui/p/7380123.html
Copyright © 2011-2022 走看看