0
我正在使用RSpec和水豚在Rails编写特性测试。出于某种原因,它不是由它的id元素。我尝试了几件事,看看为什么它没有找到元素,但没有任何帮助。RSpec水豚找不到元素
这里是我的测试
require 'rails_helper'
include Warden::Test::Helpers
feature 'Dipole options checkbox' do
before(:each) do
@user = FactoryGirl.create(:user)
@group = FactoryGirl.create(:group)
@user.groups << @group
@stack = FactoryGirl.create(:stack, user: @user, group: @group)
@param_set = FactoryGirl.create(:param_set, user: @user, group: @group, stack: @stack)
end
scenario "when check #dipole-options should be visible" do
login_as(@user, scope: :user)
visit "/param_sets/#{@param_set.id}/edit#box"
page.find(:path, "//input[@id='param_set_mat_dipoles']")
end
end
我做了一些调试,当我看着返回我可以看到ID param_set_mat_dipoles的HTML存在
(byebug) body.include? "#param_set_mat_dipoles"
true
但是,当我检查与在rspec控制台中
page.find("#param_set_mat_dipoles")
它找不到该元素。
我做了一些研究,这是能够找到父div的ID,但是当我检查该ID总数运算单元(段/ P),它没有找到最后2
有没有人有过这个?难道是元素是深深地嵌套到水豚不能找到它吗?
PS:这是它可以到达的XPath:
path="/html/body/div/div/div[2]/form/div[2]/div[4]/p[7]"
它会找到我需要的XPath的:
path="/html/body/div/div/div[2]/form/div[2]/div[4]/p[9]"
这是一个猜测,但尝试使用'page.find(“#param_set_mat_dipoles”,visible:false)' –