在test/integration目录中,建一个集成测试类
代码如下:
运行grails test-app,可在target/test-reports/html目录下打开index.html,找到RaceIntegrationTests ,可以看到结果,如果想看得更详细,右下角会有System.out,点击打开详细信息。
代码如下:
package com.rt
import groovy.util.GroovyTestCase;
class RaceIntegrationTests extends GroovyTestCase {
void testRaceDatesBeforeToday(){
def lastWeek=new Date()-7
def race=new Race(startDate:lastWeek)
assertFalse "验证失败", race.validate()
//验证失败后,它应该有错误
assertTrue "有错误",race.hasErrors()
//用如下显示错误的详细信息
println "\nErrors:"
println race.errors?:"没有发现错误"
def badField=race.errors.getFieldError('startDate')
println "\nBadField:"
println badField?:"startDate有效"
assertNotNull("startDate发现一个错误", badField)
def code=badField?.codes.find {
it=='race.startDate.validator.invalid'
}
println "\nCode:"
println code?:"startDate自定义验证器没有发现"
assertNotNull("startDate字段应该是问题所在", code)
}
}
运行grails test-app,可在target/test-reports/html目录下打开index.html,找到RaceIntegrationTests ,可以看到结果,如果想看得更详细,右下角会有System.out,点击打开详细信息。