2012-02-13 64 views
2

这是非常令人沮丧的,在检查了相关主题上的所有stackoverflow查询之后,看起来已经通过测试,我无法得到这个简单的东西排队和传递。它无法在form_for(@price)中找到“质量”标签。capybara Rails3'不能填写'

And I fill in "good" in Quality 
cannot fill in, no text field, text area or password field with id, name, or label 'price[quality]' found (Capybara::ElementNotFound) 

My功能(删节)

Scenario: Adding corn price 
    And I fill in "good" in Quality 

我的步骤(删节)

When /^I fill in "([^"]*)" in Quality$/ do |text| 
    fill_in('price[quality]', :with => text) 
    end 

我的形式:

<%= form_for (@price), :url => prices_path do |f| %> 
    <div class="field"> 
    <%= f.label :quality %><br /> 
    <%= f.text_field :quality %> 
    </div> 

我的源:

<div class="field"> 
    <label for="price_quality">Quality</label><br /> 
    <input id="price_quality" name="price[quality]" size="30" type="text" /> 
    </div> 

我试过这么多的组合,让它通过,我已经用完了组合的尝试,SAM

回答

0

什么下次使用:

When /^I fill in "([^"]*)" in Quality$/ do |text| 
    fill_in('price_quality', :with => text) 
end 
+0

感谢。这也失败了,使用上面的确切文字。 – sam452 2012-02-13 22:22:13

+0

不能填写,否....标签'price_quality'找到 – sam452 2012-02-13 22:23:08

+0

在特征中使用单词“品质”的变体时,步骤中的grep'd部分也会失败。我在之前的搜索中发现,但无法再找到链接。 – sam452 2012-02-14 14:41:33