精通Grails - 操纵Grails举行单元测试(单元测试提速)[Java编程]
本文“精通Grails - 操纵Grails举行单元测试(单元测试提速)[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
在本期精通Grails中,Scott Davis 向您展示若何操纵 Grails 中包含的 GrailsUnitTestCase 和 ControllerUnitTestCase 类的内置模拟功效.
Grails 支持两种基本的测试范例:单元测试和集成测试.两种测试的语法完 全相同:都被利用相同的断言编写为一个 GroovyTestCase.它们之间的辨别在 于语义上.单元测试用于在断绝环境下测试类,而集成测试支持在完好的、正在 运行的环境中测试类.
该文章是按照当时最新的 Grails 1.0 版本编写的,在该版本中,测试底子 架构的功效得到了明显改良.GrailsUnitTestCase 类及其子类的引入将流程测 试的简单性和全面性晋升到了一个全新的水平.具体来说,这些新测试类的模拟 功效晋升了单元测试的速度,同时可以像在集成测试中一样正常测试功效.图 1 展示了 Grails 1.1.x 中全新的测试层次构造:
图 1. Grails 1.1.x 中全新的测试层次构造
当您在下一节中成立一个新的域类和掌握器时,您将理解若何实际利用 GrailsUnitTestCase 和 ControllerUnitTestCase.
开始
要履行本文中的示例,首先成立一个新利用程序.在号令提醒符下键入:
grails create-app testing
更改到测试目录(cd testing),然后键入:
grails create-domain-class User
接下来键入:
grails create-controller User
将清单 1 中的代码增添到 grails-app/domain/User.groovy 中:
清单 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
}
目前基本的底子架构已经就绪了,接下来增添一些测试.
以上是“精通Grails - 操纵Grails举行单元测试(单元测试提速)[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |