我测试一个控制器动作。我通过POST方法将数据传递给它。将数据保存到DB后,我会重定向到主页面,在那里我显示有关操作结果的消息。
我想测试消息的文本是否等于预期,但我得到的是null而不是$ this->内容值。
然而,所有数据都已保存,并且消息通过浏览器成功显示。
以下是我对testAction的调用
$res = $this->testAction('/ask', array_merge(array('return' => 'contents'), array('data' => $fields_data, 'method' => 'post')));
答案 0 :(得分:1)
testAction()
不遵循重定向,就这么简单。
您必须相应地更改测试,并且可能会测试是否正在调用Controller::redirect()
,响应是否设置了预期的标头,是否已设置预期的Flash消息等等。
另一种方法是通过在调用操作之前定义可能的Flash消息来测试您计划单独重定向的操作。