1

目前,我有两个测试,每个测试都单独测试同一页面上的表单中的 button_click,没有ids,但都具有相同的 text Go。所以发生的事情是 capybara/rspec 只测试两个Go测试的按钮的第一个实例。有没有办法根据父母找到东西?我不想仅仅为了测试目的而通过添加一个 id 来修改我的功能代码。我在想类似的东西,但这不起作用。test_form > input[type='submit']

当前代码:

let(:submit) {"Go"}

describe "with valid information" do
  before do
    fill_in "email",        with: "stuff@example.com"
    fill_in "password",     with: "stuff"
  end

  it "should create a user" do
    expect {click_button submit}.to change(User, :count).by(1)
  end
end

当前宝石:

rails 3.2.6
rspec-rails 2.10.1
capybara 1.1.2
4

1 回答 1

1

您可以指定您希望按钮在哪个选择器中,请参阅 doc

于 2012-06-26T00:23:02.000 回答