默认情况下,单元和集成测试会获得相同的名称

Nat*_*hes 5 configuration grails unit-testing

在Grails中,单元测试和集成测试使用完全相同的命名约定生成,因此如果您正在测试一个名为Footest 的域类FooTests,则在同一个包中使用名称生成.是否有期望我应该进行单元测试或集成测试,但不是两者都有?人们是否将他们的集成测试放在与单元测试不同的包中,或重命名?什么是解决这个问题的首选方式?

顺便说一句,我攻击grails/scripts/_GrailsCreateArtifacts.groovy来改变类的生成方式,以便让它生成不同的名称(后缀属性的值就是所有改变的).当类位于名为"integration"的文件夹中时,我不喜欢在名称中包含一些意味着"集成"的东西,但这至少避免了必须进行手动重命名.

createIntegrationTest = { Map args = [:] ->
    def superClass = args["superClass"] ?: "GroovyTestCase"
    createArtifact(name: args["name"], suffix: "${args['suffix']}IntTests", 
        type: "Tests", path: "test/integration", superClass: superClass)
}
Run Code Online (Sandbox Code Playgroud)

Jay*_* P. 4

我认为给他们一个不同的名字是正确的选择。

*IntTests 
Run Code Online (Sandbox Code Playgroud)

或者

*IntegrationTests
Run Code Online (Sandbox Code Playgroud)