Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Symfony 2 TDD在功能测试中获取原始数据_Php_Symfony_Phpunit_Functional Testing - Fatal编程技术网

Php Symfony 2 TDD在功能测试中获取原始数据

Php Symfony 2 TDD在功能测试中获取原始数据,php,symfony,phpunit,functional-testing,Php,Symfony,Phpunit,Functional Testing,所以我在YT上观看了亚当·沃特汉和他的现场TDD拉威尔。他做了一件非常有趣的事,引起了我的共鸣。当他编写功能测试时,他不会对返回的html进行断言(因为前端开发人员可以更改html),但是Laravel在test$this->response->getOriginalContent()->getData()中提供了此调用,您可以从中获取原始数据并对其进行断言 我曾尝试在测试中获取原始响应数据,但没有成功。在Symfony测试中是否可能获取原始数据?如果是,怎么做 更新: 这里是YT链接。从他解释

所以我在YT上观看了亚当·沃特汉和他的现场TDD拉威尔。他做了一件非常有趣的事,引起了我的共鸣。当他编写功能测试时,他不会对返回的html进行断言(因为前端开发人员可以更改html),但是Laravel在test
$this->response->getOriginalContent()->getData()
中提供了此调用,您可以从中获取原始数据并对其进行断言

我曾尝试在测试中获取原始响应数据,但没有成功。在Symfony测试中是否可能获取原始数据?如果是,怎么做

更新:

这里是YT链接。从他解释整个想法开始。

据我所知,在这种情况下,它不是功能测试,而是对控制器返回数据的单元测试。原始内容和数据是什么?你的主张是什么?请以我们不必观看视频的方式重新表述您的问题,以防将来链接无法工作,例如,因为视频已被删除。您可以调用
$client->getResponse()
来获取响应对象并对其进行断言,而不是使用爬虫程序。这回答了你的问题吗?@我不会称之为单元测试。对我来说,就像对亚当一样,它仍然起作用。@dbrumann的想法是测试路线。但不是查询html,而是测试传递给模板的变量。例如,假设您有一些价格变量,前端开发人员将其编码为$59.00,然后创建测试以在html中查找值$59.00。然而,在某些情况下,designer将格式更改为$59,前端开发人员将更新模板。功能测试与风格无关。所以这种改变应该通过测试而不改变测试。您的建议(symfony docs也建议)是绑定您的测试模板实现。如果您想测试路由,那么如果
GET/acme/demo
正确解析,您可以创建一个客户端,发送请求,然后按照文档中的描述从客户端获得响应。如果存在所需的标题,您可以从请求中断言状态代码(200)以及更多:所有这些都不依赖于html输出。