Readme cho Capybara (xem Using Capybara with MiniTest::Spec) nói rằng tôi có thể làm điều này nếu tôi bao gồm mô-đun chính xác, nhưng nó không đưa ra bất kỳ ví dụ minh họa nào về cách ... Tôi đã thử bao gồm mô-đun như sau:Capybara Chấp nhận DSL với MiniTest :: Spec?
class MiniTest::Spec
include Capybara::DSL
end
... không có kết quả. Tôi vẫn gặp phải lỗi này:
<main>': undefined method
feature' for main:Object (NoMethodError)
Làm cách nào để làm việc như được viết trong mã nhận xét?
đặc tả/chấp nhận/api/reward_terms_spec.rb:
require "#{Dir.pwd}/spec/acceptance/acceptance_helper"
# this syntax works...
describe 'reward terms acceptance test' do
include Capybara::DSL
describe '#index' do
specify {
visit '/reward_terms'
# ...
}
end
end
# this syntax doesn't work...
# feature 'RewardTerms', %q{
# In order to get all reward terms available to me
# As an API client
# I want to list all active RewardTerms
# } do
# background do
# set_api_headers
# end
# scenario 'RewardTerm index' do
# visit '/reward_terms'
# ...
# end
# end
đặc tả/chấp nhận/acceptance_helper.rb:
ENV["RAILS_ENV"] = "test"
require "#{Dir.pwd}/config/environment"
require 'minitest/autorun'
require 'capybara/rails'
def set_api_headers(device_id = 'abcd1234')
header 'Accept', 'application/json'
header 'X-Device-Id', device_id
end
Yeah, tôi thấy bài đó, nhưng điều đó chỉ cho phép bạn sử dụng quẹt Capybara, không phải là DSL BDD để thử nghiệm chấp nhận, đó là những gì tôi sau ... – neezer
Trên [link] (https://github.com/jnicklas/capybara) phần trên Capybara DSL được chứa trong phần "Sử dụng Capybara với RSpec", ở đó có nội dung "Cuối cùng, Capybara cũng xuất hiện với một DSL tích hợp để tạo ra các thử nghiệm chấp nhận mô tả: ". Tuy nhiên sau khi trình bày DSL trong hành động, nó nói: "' feature' thực ra chỉ là một bí danh cho 'description ...,: type =>: request',' background' là bí danh cho 'before' và' scenario' cho 'nó'." Vì vậy, bạn không may mắn nếu bạn muốn sử dụng nó với MiniTest vì nó là một tính năng chỉ RSpec, nhưng bạn có thể cố gắng xác định bí danh của riêng bạn – Patru
Bài đăng trên blog được liên kết đã bị gỡ xuống khỏi Posterous, nhưng tại đây Lưu trữ Internet: http://web.archive.org/web/20130314201201/http://code-ningja.posterous.com/73460416 –