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();
        }
  • 相关阅读:
    递归浅析
    python3中zip()的用法
    在早期IBP病人中比较风湿病医生诊断中轴型SpA(aSpA)与非aSpA
    超声检查附着点在早期SpA诊断中的应用
    验证MRI检测AS病人骶髂关节骨侵蚀、扩展侵蚀和回填
    EULAR2008_TNF拮抗剂保护RA骨关节的机制可能不止是抑制滑膜炎
    RA关节功能残疾与软骨破坏的相关性高于骨破坏
    TNFBA治疗强柱达8年的放射学评估
    荟萃分析随机对照临床试验显示抗TNF治疗未增加早期RA病人的严重感染和肿瘤发生风险
    早期IBP病人骶髂关节MRI炎症与1年后MRI结构破坏之间的关系
  • 原文地址:https://www.cnblogs.com/handsomecui/p/7380123.html
Copyright © 2011-2022 走看看