开始使用grails进行游戏,我想评估GORM,因此我使用Spring Tool Suite创建了一个域类:ClientnamevatNumberregNumber,并且测试类是自动创建的。

我添加的单元测试代码是:

package pilot1 
 
import grails.test.* 
 
class ClientTests extends GrailsUnitTestCase { 
    protected void setUp() { 
        super.setUp() 
    } 
 
    protected void tearDown() { 
        super.tearDown() 
    } 
 
    void testSomething() { 
        def instances = [] 
        def myTestDomain = mockDomain(Client, instances) 
        def client = new Client(name:"Test",vatNumber:"323",regNumber:"343") 
        client.id =1; 
        assertEquals client.name, "Test" 
        client.save(); 
        def res = Client.findByName("Test") 
        println instances 
        println res 
        //assertEquals 1, instances.size() 
    } 
} 

结果为[],并且为空!我做错什么了?

另外,我还希望在后台看到GORM(休眠)生成的SQL。知道我将如何在Grails中这样做吗?

请您参考如下方法:

不要这样做:client.id = 1;

save()将提供一个ID。

您可能需要保存(flush:true)。

只需保存并使用,然后使用ID即可获取。

然后进行测试。

该链接可能有用:http://blog.springsource.com/2011/06/07/countdown-to-grails-1-4-unit-testing/


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!