我想为我的grails app编写单元测试。
但是groovy中的null
对象模式存在问题。
我使用for:
创建一个实例KeywordClickPerformance performance = KeywordClickPerformance.forA("string").from(startDate).to(endDate)
但是当这样使用时;
void testForA() {
assertEquals "string", performance.keyword.name
}
执行单元测试后,grails会给出以下异常:
"java.lang.NullPointerException: Cannot get property 'name' on null object at "
我使用performance?.keyword?.name
作为解决方案,但它返回null
,因为performance
是null
。
我找不到解决方案。我该如何解决这个问题?
答案 0 :(得分:0)
您需要在测试或设置中创建性能。否则你的forA方法不正确......
答案 1 :(得分:0)
没有创建性能。您需要在=右侧的KeyworkClickPerformance前添加新内容。我认为groovy将允许链接构造函数。如果没有,你可以用两行
来完成KeywordClickPerformance performance = new KeywordClickPerformance() performance.forA( “串”)。从(的startDate)。为了(结束日期)