我是新来的ruby,但试图安装水豚运行testing我的系统时,我得到以下错误。 我正在运行OSX my_app$ gem install capybara-webkit Building native extensions. This could take a while… ERROR: Error installing capybara-webkit: ERROR: Failed to build gem native extension. /Users/joe/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb Gem files will remain installed in /Users/joe/.rvm/gems/ruby-1.9.2-p290/gems/capybara-webkit-0.7.2 for inspection. Results logged to /Users/joe/.rvm/gems/ruby-1.9.2-p290/gems/capybara-webkit-0.7.2/./gem_make.out 这里是来自gem_make.out的结果 /Users/joe/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb
我有这个: <input class="string optional" id="course_group_courses_attributes_2_name" name="course_group[courses_attributes][2][name]" placeholder="Lengua" size="15" type="text" /> </div> 我如何通过ID填写该字段?
我有以下两个HTML元素 <a href="/berlin" >Berlin</a> <a href="/berlin" >Berlin Germany </a> 我试图通过使用以下水豚方法find元素 find("a", :text => "berlin") 以上将返回两个元素,因为两者都包含文本柏林。 有没有一种方法来匹配水豚的确切文字?
我不能得到水豚与rspec工作。 它给了我这个错误: undefined method `visit' for #<RSpec::Core::ExampleGroup::Nested_1:0x16529f8 @example=nil> 我知道有很多关于这个的post,但没有解决scheme正在为我工作。 他们中的大多数都涉及不在/规格/function的规格 – 这是我的。 首先是错误: $bundle exec rspec spec F Failures: 1) security signs users in Failure/Error: visit "/sessions/new" NoMethodError: undefined method `visit' for #<RSpec::Core::ExampleGroup::Nested_1:0x16529f8 @example=nil> # ./spec/features/security_spec.rb:4:in `(root)' Finished in 0.006 seconds 1 example, 1 failure Failed examples: rspec ./spec/features/security_spec.rb:3 # security signs users in 我认为重要的是要注意,一开始我使用URL […]
我想要做以下事情,但不能由于fill_in期待locator作为第一个参数的性质。 find(:css, "input[id$='donation_pledge_hundreds']").fill_in :with => "10" 我也尝试过 element = find(:css, "input[id$='donation_pledge_hundreds']") fill_in element.<method> , :with => "10" 但是没有方法返回任何数据来标识fill_in的元素。 任何想法通过正则expression式find一个字段的最佳方式与fill_in一起使用?
我正在使用RSpec2和Capybara进行验收testing。 我想断言链接是禁用或不在水豚。 我怎样才能做到这一点?
如何解决水豚的歧义? 出于某种原因,我需要在页面中具有相同值的链接,但是由于出现错误,我无法创buildtesting Failure/Error: click_link("#tag1") Capybara::Ambiguous: Ambiguous match, found 2 elements matching link "#tag1" 我无法避免的原因是因为devise。 我正在尝试重新创buildTwitter页面的右侧的推文/标签和页面左侧的标签。 因此,同一页面上出现相同的链接页面是不可避免的。
我试图从使用水豚(2.1.0)的下拉菜单中select一个项目。 我想通过数字select(意思是select第二,第三等选项)。 我疯狂地Googlesearch各种各样的东西,但没有运气。 我能够通过使用值来select它: find("option[value='4c430d62-f1ba-474f-8e8a-4452c55ea0a8']").click 但我不想用这种方法B / C的价值是会改变,这将使我的testing变得脆弱。 下拉菜单的HTML是: <td class="value"> <select name="organizationSelect" id="organizationSelect" class="required"> <option value="NULL">Choose…</option> <option value="4c430d62-f1ba-474f-8e8a-4452c55ea0a8"> Institution1</option> <option value="e1a4efa7-352d-410a-957e-35c8a3b92944"> Institution / test</option> </select> </td> 我也试过这个: option = find(:xpath, "//*[@id='organizationSelect']/option[2]").text select(option, :from => organizationSelect) 但是这会导致这个错误: Ambiguous match, found 2 elements matching option "Institution" (Capybara::Ambiguous) 那么如何从下拉列表中select第一,第二,第三等选项(使用水豚)呢?
我正在使用Rspec和水豚。 我如何写一个步骤来检查一个checkbox ? 我试图check值,但它无法find我的checkbox 。 我不知道该怎么做,因为我实际上有不同的ID的ID 这里是代码: <input id="cityID" type="checkbox" style="text-align: center; opacity: 0;" value="61" name="cityID"> <input id="cityID" type="checkbox" style="text-align: center; opacity: 0;" value="62" name="cityID"> <input id="cityID" type="checkbox" style="text-align: center; opacity: 0;" value="63" name="cityID">
如何在这种情况下点击第一个链接: <div class="item"> <a href="/agree/">Agree</a> </div> <div class="item"> <a href="/agree/">Agree</a> </div> within ".item" do first(:link, "Agree").click end 我得到这个错误: Capybara::Ambiguous: Ambiguous match, found 2 elements matching css ".item" 没有within我得到这个错误: Failure/Error: first(:link, "Agree").click NoMethodError: undefined method `click' for nil:NilClass