接口测试中如何管理测试域名和接口

来源:互联网 发布:天猫魔盒看电视软件 编辑:程序博客网 时间:2024/06/11 23:48

本人在做接口测试的过程中,遇到了一个问题,有好几个需要测试的环境,配置了不同的域名但是每个域名下需要测试的接口不同,但是接口的用例都是公用的,经过仔细学习了一下java代码的执行顺序之后,终于想到了一个办法,相当于写一个配置类,专门配置不同的域名和域名下的接口。

首先分享一下工程目录:

前三个包都是不同环境下的测试类内容非常简单,base是配置文件,case是执行所有方法,test调试接口的类。


分享一个测试代码里面的public属性设置:

public static List<Map<String, String>> apiGroups = new ArrayList<Map<String, String>>();// 用于管理接口public static String HOST;public static final String POST = "post";public static final String GET = "get";public static boolean hostType;
下面是一个base类的代码:(有删减)

package juziyule;import java.util.HashMap;import java.util.Map;import source.ApiLibrary;import source.SourceCode;public class Base_juzi extends ApiLibrary {static {ApiLibrary.HOST = "http://testapi.app.happyjuzi.com";ApiLibrary.hostType = false;SourceCode.getInstance().output(HOST);Map<String, String> group001 = new HashMap<>();apiGroups.add(group001);group001.put("/common/menu", GET);// 首页导航接口group001.put("/common/setting", GET);// 设置,AB Test相关group001.put("/topic/get", GET);// 专题列表group001.put("/user/info", GET);// 获取用户信息group001.put("/video/home", GET);// 全部视频列表group001.put("/video/category", GET);// 视频栏目下的列表SourceCode.getInstance().output("一共测试了" + group001.size() + "个接口!");}}
这样就完美解决了每次都要修改host和hosttype的值的办法了。因为如果我需要测试online环境,java会执行case_online里面的代码,然后会依赖base_online,只会加载base_online这一个配置类的代码,host和hosttype就是我想要测试的域名和域名类型,剩下的就是配置的接口。

宣传一下自己的QQ群:群号:340964272




原创粉丝点击