1.請求結果斷言
如果表格用例里的提取返回數據不為空,再把json數據轉化為map格式,通過增強for循環讀取map里的鍵再獲取到每一個值,通過response.jsonpath().get()得到實際值,再將期望值與實際值斷言
public static void responseequal(FutureloanPojo futureloanPojo){
if (futureloanPojo.getExtract()!=null){
String strexpect=futureloanPojo.getExpected();
Map<Object,Object> expect= JSONObject.parseObject(strexpect,Map.class);
for (Object key:expect.keySet()){
Object valueexpected=expect.get(key);
Object valueactual= response.jsonPath().get((String) key);
Assert.assertEquals(valueactual,valueexpected);
}
}
}
2.數據庫斷言
public static void assertSQL(FutureloanPojo futureloanPojo){
String sqlassert=futureloanPojo.getSql();
if (sqlassert!=null){
Map<String,Object> sqlassertmap= JSONObject.parseObject(sqlassert,Map.class);
for (String key:sqlassertmap.keySet()){
//Integer expectedvalue=(Integer) sqlassertmap.get(key);
Object expectedvalue=sqlassertmap.get(key);
if (expectedvalue instanceof BigDecimal){
Object actualvalue=singledata(key);
Assert.assertEquals(actualvalue,expectedvalue);
}else if (expectedvalue instanceof Integer){
Long expectedvalue2=((Integer)expectedvalue).longValue();
Object actualvalue=singledata(key);
Assert.assertEquals(actualvalue,expectedvalue2);
}
}
}
}
