精通 Grails: 使用 Grails 进行单元测试(单元测试提速)
2009-11-26 00:00:00 来源:WEB开发网
清单 1. User 域类class User {
String name
String login
String password
String role = "user"
static constraints = {
name(blank:false)
login(unique:true, blank:false)
password(password:true, minSize:5)
role(inList:["user", "admin"])
}
String toString(){
"${name} (${role})"
}
}
定义 grails-app/controller/UserController.groovy 的核心行为,如清单 2 所示:
清单 2. UserController 类class UserController {
def scaffold = true
}
现在基本的基础架构已经就绪了,接下来添加一些测试。
在 GrailsUnitTestCase 中进行模拟
在文本编辑器中打开 test/unit/UserTests.groovy。代码如清单 3 所示:
清单 3. UserTests 类import grails.test.*
class UserTests extends GrailsUnitTestCase {
protected void setUp() {
super.setUp()
}
protected void tearDown() {
super.tearDown()
}
void testSomething() {
}
}
在 Grails 1.0 中,create-domain-class 命令创建的存根测试扩展了 GroovyTestCase。可以看到,现在对一个域类的单元测试(在 Grails 1.1 中)扩展了 GrailsUnitTestCase。所以,您可以使用一些新方法来在单元测试中启用模拟功能,这种功能在以前需要在集成测试中启用。
更多精彩
赞助商链接