Cra*_*aig 11 functional-testing symfony
我在编写Symfony 2功能测试时遇到问题,无法设置属于数组的复选框(即多个扩展的选择窗口小部件)
在文档中,示例是
$form['registration[interests]']->select(array('symfony', 'cookies'));
Run Code Online (Sandbox Code Playgroud)
但它没有显示哪些html可以使用它并且它不适用于我的.这是我的表格的缩减版本
<form class="proxy" action="/proxy/13/update" method="post" >
<input type="checkbox" id="niwa_pictbundle_proxytype_chronologyControls_1" name="niwa_pictbundle_proxytype[chronologyControls][]" value="1" />
<input type="checkbox" id="niwa_pictbundle_proxytype_chronologyControls_2" name="niwa_pictbundle_proxytype[chronologyControls][]" value="2" />
<input type="checkbox" id="niwa_pictbundle_proxytype_chronologyControls_3" name="niwa_pictbundle_proxytype[chronologyControls][]" value="3" />
</form>
Run Code Online (Sandbox Code Playgroud)
一旦它在那里工作,我将转向手动制作的表格
<input type="checkbox" id="13" name="proxyIDs[]" value="13">
<input type="checkbox" id="14" name="proxyIDs[]" value="14">
<input type="checkbox" id="15" name="proxyIDs[]" value="15">
Run Code Online (Sandbox Code Playgroud)
我尝试过类似的东西
$form = $crawler->selectButton('Save')->form();
$form['niwa_pictbundle_proxytype[chronologyControls]']->select(array('3'));
$form['niwa_pictbundle_proxytype[chronologyControls][]']->select(array('3'));
Run Code Online (Sandbox Code Playgroud)
但第一个失败的说法select
是在一个非对象上运行,第二个说 Unreachable field ""
.
jkr*_*nak 13
尝试
$form['niwa_pictbundle_proxytype[chronologyControls]'][0]->tick();
Run Code Online (Sandbox Code Playgroud)
它甚至以[]所述的形式从0开始索引
或者,如果它对您没有帮助,您可以尝试将数组直接发布到操作而不是使用symfony的表单选择器.请参阅:Symfony2:对ArrayCollection进行测试会给出"无法访问的字段"
希望他们中的一个可以帮到你.
归档时间: |
|
查看次数: |
3998 次 |
最近记录: |