在接口测试培训系列1中,描述了针对一个需求的实现方法,及对这个需求方法接口测试用例的设计,在本篇中,在该需求的基础上再增加需求,同时将需求扩展为一个小的项目,讲解针对项目的接口测试如何去做。
需求描述:
1. 增加店铺对象,评价属于店铺
2. 可以针对店铺增加评价,删除评价,修改评价
3. 根据店铺id获得店铺的星
4. 根据店铺id获得店铺的好评率
5. 根据店铺id获得店铺在所有店铺当中的排序,排序算法是:星越多排序越靠前,如果星相等,则根据好评率排序,好评率越高,排序越靠前,如果好评率相等,则评价越多越靠前,如果评价数相等,则默认当前店铺排名靠前。
实现思路:
1. 建立一个店铺类,具有店铺名称,店铺ID两个属性
2. 建立一个评价类,具有所属店铺id,评价类型,更新时间属性
3. 增加一个店铺操作类,具有增加评价,删除评价,修改评价,获取店铺星,获取店铺好评,获取店铺排序的方法
4. 建立一个数据库,里面有两张表,一张店铺表,一张评价表
5. 店铺表字段:店铺id,店铺名称
6. 评价表字段:所属店铺id,评价类型,更新时间
分层开发
1. DAO层:具体的对数据库的操作
publicinterfaceIPingJiaDao {
//插入一条记录
publicbooleaninsert(PingJia pingJia);
//修改评价记录
publicbooleanupdate(PingJia pingJia);
//删除评价记录
publicbooleandelete(String pingJiaId);
//得到一个店铺的评价列表
publicList<PingJia> getPingJiaList(String storeId);
//得到一个店铺的好评率
publicdoublegetGoodPingJiaRate(String storeId);
}
2. Service层:具体的业务逻辑层
publicinterfaceIStoreService {
//添加评价,
publicbooleanaddPingJia(PingJia pingJia);
//修改评价类型
publicbooleanupdatePingJia(PingJia pingJia);
//删除评价
publicbooleandeletePingJia(String pingjiaId);
//根据店铺Id,得到店铺的星数
publicintgetSotreStar(String storeId);
//得到店铺排序位置
publicintgetStoreIndex(String storeId);
//得到店铺好评率
publicdoublegetStoreGoodRate(String storeId);
}