1 package Common; 2 3 import com.jayway.jsonpath.JsonPath; 4 5 public class JsonAssert { 6 7 public static void main(String[] args) { 8 String json = "{\"code\":200,\"data\":{\"roleList\":[{\"roleCode\":\"administrator\",\"roleName\":\"系統管理員\",\"roleType\":0,\"userId\":1},{\"roleCode\":\"ChengjiaSignetAdmin\",\"roleName\":\"印章管理員(誠加)\",\"roleType\":0,\"userId\":1},{\"roleCode\":\"SignetAdmin-CX\",\"roleName\":\"印章管理員(創喜)\",\"roleType\":0,\"userId\":1},{\"roleCode\":\"SignetAdmin-XM\",\"roleName\":\"印章管理員(項目)\",\"roleType\":0,\"userId\":1}],\"siDeptBean\":{\"code\":\"08\",\"corptionid\":\"MORG2017051178\",\"createdate\":\"2017-05-23 00:00:00\",\"depttype\":\"0\",\"enablestate\":\"2\",\"id\":44981,\"ishrcancel\":\"N\",\"mdmCode\":\"MAGDEPT201705007580\",\"mdmCreatedon\":\"2017-05-23 15:44:15\",\"mdmPk\":\"0001H210000000B12SC6\",\"mdmSeal\":0,\"name\":\"信息管理中心\",\"pkDepartmentid\":\"1001H2100000026M3E5F\",\"pkPsndoc\":\"PD160701000498\",\"ts\":\"2018-03-24 10:00:44\"},\"siOrgBean\":{\"code\":\"3012405\",\"constructiontime\":\"2014-12-02 10:17:35\",\"fatherorgnization\":\"0001H2100000000023XT\",\"id\":97,\"mdmCode\":\"MORG2015070819\",\"mdmCreatedon\":\"2014-12-02 10:17:35\",\"mdmPk\":\"0001H21000000000NUJ7\",\"mdmSeal\":0,\"name\":\"荔城物業服務分公司(豪園)\",\"organizationid\":\"0001H2100000000024FN\",\"principal\":\"PD150706019317\",\"shortname\":\"荔城物業服務分公司(豪園)\",\"ts\":\"2018-09-14 23:10:10\"},\"siUserBean\":{\"belongAreaOrg\":\"\",\"code\":\"admin\",\"enablestate\":\"Y\",\"id\":1,\"isgeneratead\":\"Y\",\"isturnover\":\"N\",\"leavedate\":\"2016-05-05 00:00:00\",\"mdmCode\":\"US111111111111\",\"mdmCreatedon\":\"2014-12-07 22:02:55\",\"mdmPk\":\"0001H210000000007ADG\",\"mdmSeal\":0,\"mobile\":\"13711663537\",\"name\":\"系統管理員\",\"passwd\":\"8a6ecc606878daeef7570a8b4fd26740\",\"pkDept\":\"MAGDEPT201705007580\",\"pkOrg\":\"MORG2015070819\",\"pkPsndoc\":\"PD150710095238\",\"pkUsertype\":\"1001H9100000003N3E77\",\"postname\":\"三級環境管理員\",\"siteno\":\"2014021017\",\"ts\":\"2016-12-02 08:57:02\"},\"userId\":1,\"userName\":\"系統管理員\"},\"success\":true}"; 9 String expression = "$.data.roleList[0].roleCode"; 10 String expression1 = "$.success"; 11 String expression2 = "$.success"; 12 String expression3 = "$.data.siUserBean.name"; 13 JsonAssert jsonAssert = new JsonAssert(); 14 System.out.println(jsonAssert.jsonPath(json,expression)); 15 System.out.println(jsonAssert.jsonPath(json,expression1)); 16 System.out.println(jsonAssert.jsonPath(json,expression3)); 17 18 } 19 20 public String jsonPath(String json,String expression){ 21 String getValue = JsonPath.read(json,expression).toString(); 22 23 if(getValue.contains("[")){ 24 getValue=getValue.substring(getValue.indexOf("[")+1,getValue.length()-1); 25 } 26 return getValue.replaceAll("\"",""); 27 } 28 }
語法表:
接口測試,獲取到json格式的數據后,通過解析式獲取到特定的斷言判斷實際值