小编Rah*_*tik的帖子

如何为grails 2.4中的特征编写spock单元测试用例?

我正在使用Traits来制作我的控制器DRY.我想使用Spock对Trait类进行单元测试.这是我的样本特征和Spock测试用例:

trait SomeTrait {
    public void checkSomething (Closure c ){
        // Do some operation
        c.call
    }
}

@TestMixin(GrailsUnitTestMixin)
class SomeTraitSpec extends Specification {
     void "test checkSomething "(){
        setup: 
        MockedClass mockedObj = new MockedClass()
        def x=0
        def c = {
            x=1
        }

        when:
        mockedObj.checkSomething(c)

        then:
        assert x==1
    }
 }
class MockedClass implements PermissionTrait {
     // some thing   
    }
Run Code Online (Sandbox Code Playgroud)

由于trait是一个接口,我在我的测试用例中有一个Mocked类正在实现Trait,我创建了一个这个Mocked类的对象并调用我要测试的Trait方法.这是正确的方法,如果不是,请用恰当的例子指出正确的方向.

grails unit-testing traits spock grails-2.4

7
推荐指数
1
解决办法
1645
查看次数

标签 统计

grails ×1

grails-2.4 ×1

spock ×1

traits ×1

unit-testing ×1