栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何测试利用条件查询(带有spock)的Grails服务?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何测试利用条件查询(带有spock)的Grails服务?

您不应该使用单元测试来测试持久性-您只是在测试模拟框架。

而是将条件查询移动到域类中适当命名的方法,并使用集成测试针对数据库进行测试:

class Event {   ...   static Set<Event> findAllEventsByDay(Date date, int offset, int max) {      ...   }}class EventService {   Set<Event> listEventsForDate(Date date, int offset, int max) {      ...      return Event.findAllEventsByDay(date, offset, max)   }}

如果将service方法作为包装仍然有价值(例如,如果它实现了数据库查询之上和之外的一些业务逻辑),则现在可以轻松进行单元测试,因为可以轻松模拟出静态域类方法调用:

def events = [new Event(...), new Event(...), ...]Event.metaClass.static.findAllEventsByDay = { Date d, int offset, int max -> events }

这是适当的,因为您正在测试服务如何使用其接收的数据,并假设集成测试中涵盖了检索。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/514845.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号