Capybara (Using Capybara with MiniTest::Spec देखें) के लिए रीडमी का कहना है कि मैं यह कर सकता अगर मैं सही ढंग से मॉड्यूल शामिल हैं, लेकिन यह कैसे के किसी भी निदर्शी उदाहरण देना नहीं है ... मैं इस तरह मॉड्यूल सहित कोशिश की है:मिनीटेस्ट :: स्पेक के साथ कैपिरा स्वीकार्य डीएसएल?
class MiniTest::Spec
include Capybara::DSL
end
... कोई फायदा नहीं हुआ। मैं इस त्रुटि प्राप्त हो रही:
<main>': undefined method
feature' for main:Object (NoMethodError)
मैं के रूप में यह टिप्पणी की-आउट कोड में लिखा है कि यह काम कैसे मिल सकता है?
कल्पना/स्वीकृति/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
कल्पना/स्वीकृति/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
हाँ, मुझे लगता है कि पोस्ट को देखा है, लेकिन यह केवल आप Capybara matchers, स्वीकृति परीक्षण के लिए नहीं BDD डीएसएल है, जो कि मैं क्या कर रहा हूँ का उपयोग करने की अनुमति देता है के बाद ... – neezer
[लिंक] (https://github.com/jnicklas/capybara) पर कैपिबरा डीएसएल पर हिस्सा "आरएसपीईसी के साथ कैपिबरा का उपयोग" पर अनुभाग में शामिल है, इसमें कहा गया है "अंत में, कैपिबरा भी आता है वर्णनात्मक स्वीकृति परीक्षण बनाने के लिए डीएसएल में निर्मित के साथ: "। हालांकि डीएसएल को कार्रवाई में पेश करने के बाद यह कहता है: "फीचर' वास्तव में 'वर्णन ...,: टाइप =>: अनुरोध' के लिए एक उपनाम है, 'पृष्ठभूमि'' पहले 'के लिए उपनाम है, और' परिदृश्य ' 'it' के लिए।" तो यदि आप मिनीटेस्ट के साथ इसका उपयोग करना चाहते हैं तो आप भाग्य से बाहर हैं क्योंकि यह एक आरएसपीसी-केवल सुविधा है, लेकिन आप अपने स्वयं के उपनामों को परिभाषित करने का प्रयास कर सकते हैं – Patru
लिंक किए गए ब्लॉग पोस्ट को पोस्टरस से हटा दिया गया है, लेकिन यहां यह है इंटरनेट पुरालेख: http://web.archive.org/web/20130314201201/http://code-ningja.posterous.com/73460416 –