1

我设计了一个 symfony Web 应用程序,它提供了宁静的 Web 服务。我想编写一组功能测试来测试这些返回 JSON 数据的 Web 服务。

但是,我不确定如何测试需要向其发布一些测试数据的 Web 服务。那就是我如何将一些数据发布到我的 symfony 应用程序中的 Web 服务 URL,以便我可以断言一些响应?顺便说一句,我喜欢 Symfony 作为一个框架

所以这里有一些测试 GET 响应的示例代码:

 public function testIndex()
    {
        $client = static::createClient();

        $crawler = $client->request('GET', '/demo/hello/Fabien');

        $this->assertGreaterThan(
            0,
            $crawler->filter('html:contains("Hello Fabien")')->count()
        );
    }

如果上面的 /demo/hello/Fabien 需要一些发布数据怎么办?

非常感谢您的一些见解

4

1 回答 1

1

内容是请求函数中的第 6 个参数,因此您可以执行以下操作:

$data = json_encode(array('name' => 'Fabian'));

$crawler = $client->request(
    'POST',
    '/demo/hello',
    array(),
    array(),
    array(),
    $data
);
于 2013-04-26T20:36:27.153 回答