Grails functional-test 插件,在 Post 中设置正文

标签 grails post functional-testing

我正在使用功能测试插件来测试我的 REST 网络服务。我无法以正确的方式设置 body 的内容。这是我的代码:

class HelloWorldFunctionalTests extends APITestCase {

    String postJson = "{\"name\":\"test name\"}"

    void testPost() {
        post('/mycontroller') {
            headers['Accept'] = 'application/json'

            body {
                """
                    {name:'test name'}
                """
            }

        }

        //assertStatus 200
    }
}

目前我得到: java.lang.NullPointerException异常 在 groovyx.net.http.HTTPBuilder$RequestConfigDelegate.setBody(HTTPBuilder.java:1200)

谁能看出是什么问题?

非常感谢, 亚历克斯

最佳答案

这与 body 的设置方式无关。我缺少的是内容类型。

这行代码让它工作得很好:

headers['Content-Type'] = 'application/json'

关于Grails functional-test 插件,在 Post 中设置正文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11583022/

相关文章:

grails - 用grails更改文件的编码

java - 这是通过 HTTP POST 向 java Web 服务器提交 JSON 的正确方法吗?

java - 如何处理http POST正文

unit-testing - grails 没有找到 geb 功能测试

ruby-on-rails - 使用 RESTful 身份验证插件的 Ruby on Rails 功能测试

unit-testing - 最大化测试覆盖率并最小化重叠/重复

grails - Grails创建标准的简单问题

apache - 部署在代理后面时,Grails 会生成正确的链接

rest - PUT POST 是幂等的 (REST)

grails - 在集成测试中获取服务器 URL?