【问题标题】:How to verify value of text field in Symfony 1.4 functional tests如何在 Symfony 1.4 功能测试中验证文本字段的值
【发布时间】:2013-03-26 17:04:27
【问题描述】:

我正在尝试使用 Symfony 1.4 的功能测试 (sfTextFunctional) 来验证文本字段的值是否符合我的预期。这是生成的html

<input type="text" maxlength="10" name="number_plant[1]" value="5" id="number_plant_1">

在测试期间我可以轻松设置值

setField('number_plant[1]', '5')-> 

我已经尝试了以下检查元素的排列,但它们都返回 null

checkElement('number_plant[1]',"5")->

checkElement('number_plant_1',"5")->

checkElement('#number_plant_1',"5")->

checkElement('form input[type="text"][name="number_plant[1]"]',"5")->

【问题讨论】:

    标签: symfony-1.4 functional-testing


    【解决方案1】:

    尝试类似:

    checkElement('#number_plant_1[value="5"]')
    

    编辑:显然只有这个选择器按预期工作:

    checkElement('form input[type="text"][name="number_plant[1]"][value="5"]')
    

    (这很奇怪;))

    这将检查页面上是否存在带有id = "number_plant_1"value = "5" 的元素。据我所知,当您将字符串作为第二个参数传递给checkElement 时,它会尝试将找到的元素的内容与给定的字符串相匹配。

    【讨论】:

    • 我尝试了 #number_plant_1[value="5"] 和 number_plant[1][value="5"] 但都失败了,并说该元素不存在。然后我让它打印出页面的内容,它肯定有&lt;input type="text" id="number_plant_1" value="5" name="number_plant[1]" maxLength="10"&gt;
    • 哈哈!似乎有效的咒语是checkElement('form input[type="text"][name="number_plant[1]"][value="5"]')-&gt;,所以修正你的答案,我会将其标记为正确
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-27
    • 1970-01-01
    • 2013-07-12
    • 2015-06-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多