我发现在Grails中运行集成和功能测试时反馈看起来很慢。有没有办法在我编写测试时针对正在运行的服务器实例运行它们,以便在每次执行时节省服务器启动时间?
答案 0 :(得分:2)
您可以使用grails interactive
,无需启动服务器即可完成所需操作。它启动JVM并使其保持运行,您可以使用它来运行单元和集成测试。请记住,您最终会耗尽内存并需要定期重新启动。见http://docs.grails.org/latest/guide/gettingStarted.html#usingInteractiveMode
同样在1.3.5中,您可以针对正在运行的服务器运行功能测试。使用http://grails.org/doc/latest/
中第9.3节中描述的baseUrl
属性
答案 1 :(得分:1)
有一个选项--baseUrl
e.g。
grails test-app --baseUrl=http://localhost:8080/myapp/
对正在运行的实例运行测试,一个缺点是在测试后没有擦除平板,所以如果您的测试写入数据库,上传文件或对应用程序进行其他一些永久性更改,那么你可能要做一些撕裂。
这是在grails docs的函数测试部分结尾处简要记录的。
http://grails.org/doc/latest/guide/testing.html#functionalTesting
它对编写/调试功能测试很有用
答案 2 :(得分:0)
我在功能测试环境中使用Grails 1.3.5和EasyB插件进行故事。
请查看http://padcom13.blogspot.com/2010/10/grails-easyb-and-selenium.html以获取分步说明。