【发布时间】:2012-07-28 20:39:55
【问题描述】:
我似乎无法弄清楚如何在服务单元测试中设置模拟服务的属性。我尝试使用需求对象和 setProperty 方法,这似乎从 Grails 2 中消失了。
@TestFor(SomeService)
@Mock([HelperService])
class SomeServiceTests {
void testDoSomething() {
def helperService = mockFor HelperService
// tried this, error in method being tested
helperService.setProperty('propToSet',['a','b'])
// tried this, error in test
helperService.demand.propToSet = ['a','b']
// tried this, error in method being tested
helperService.demand.getPropToSet() {['a','b']}
service.helperService = helperService
assert service.doSomething('aa') != null
}
}
对于大多数这些错误是No such property: propToSet for class: grails.test.GrailsMock,从我正在测试的需要它的方法中抛出。上面的第二个选项实际上给出了一个硬错误。如何在模拟的 Grails 对象中设置属性?
【问题讨论】:
标签: spring unit-testing grails