Grails单元测试控制器具有继承性

时间:2013-08-13 15:33:18

标签: unit-testing grails controller

我在对控制器进行单元测试时遇到了问题。在尝试测试请求时,测试错误地指向了错误的方法。下面的例子,应该清楚地说明问题。

家长控制器

class ExampleParentController {

    def someMethod = {
        render "FALSE"
    }

    def someMethod(def object)
    {
        render "DEFINITELY FALSE"
    }
}

儿童控制器

class ExampleChildController extends ExampleParentController {

    def someMethod = {
        render "TRUE"
    }
}

测试类

class ExampleChildControllerTests extends ControllerUnitTestCase {

    protected void setUp() {
        super.setUp()
    }

    protected void tearDown() {
        super.tearDown()
    }

    void testSomeMethod() {
        controller.someMethod()
        def result = controller.response.contentAsString
        assertEquals ("TRUE", result)
    }
}

我希望controller.someMethod()呈现“TRUE”。这在应用程序运行时执行时非常有效,因为someMethod(def object)未作为端点公开。有没有办法指定执行哪个方法?

0 个答案:

没有答案