2011-12-23 14 views
12

खोलने का प्रयास करता है मैं कैकबरा, कैपिबरा-वेबकिट, कैपिबरा-स्क्रीनशॉट को ककड़ी के साथ एक साथ उपयोग कर रहा हूं। (रूबी 1.9.3, रेल 3.1.3) और Capybara.javascript_driver = :webkit भी env.rbCapybara-webkit example.com

सेट किया गया है दुर्भाग्य से @javascript के साथ एक ककड़ी कल्पना चल किसी कारण और त्रुटि स्क्रीनशॉट केवल example.com पर कब्जा के लिए सफल होने के कभी नहीं होगा।

जो यूआरएल मैं वास्तव में खोलने की कोशिश करता हूं वह मेरे मॉडल में से एक के लिए रेल राउटर परिणाम के साथ उत्पन्न होता है। visit products_url

तो मैं कैसे बच सकता हूं कि यह example.com क्वेरीिंग समाप्त हो जाता है?

कोई इनपुट बहुत स्वागत है।

Capybara.run_server = true 
Capybara.server_port = 7787 
Before '@javascript' do 
    Capybara.app_host = "http://127.0.0.1:#{Capybara.server_port}" 
end 

उत्तर

11

बजाय visit products_path उपयोग करने का प्रयास: -


सिर्फ इसलिए कि टिप्पणी में गड़बड़ है यहाँ मैं क्या पाया समाधान था। वे README के "गॉटचास" खंड में पूर्ण URL का उपयोग करने की अनुशंसा नहीं करते हैं।

+0

का उपयोग products_path पहली जगह में एक त्रुटि के साथ समाप्त होता है काम कर रहे। ताकि मेरे वर्तमान विन्यास है: Capybara.run_server = सच Capybara.server_port = 7787 से पहले '@javascript' Capybara.app_host = "http://127.0.0.1:#{Capybara.server_port}" अंत करना इसके अतिरिक्त: http://www.emmanueloga.com/2011/07/26/taming-a-capybara.html capybara और रेल के साथ कुछ अन्य नुकसान को हल करने के लिए देखता है 3.1 – pagid

+0

लगता है कि गॉटचा वेबकिट पर लागू नहीं होती है पूर्ण यूआरएल के बारे में बात कर रहे हैं –

1

मेरे लिए, बहुत अधिक स्नीकर "गोचाचा" था (और मैं कैपेबरा का उपयोग रुपेक के साथ कर रहा था)। एक कल्पना में मूल रूप से मैं था:

visit "foos/5" 

यह Rack::Test के साथ ठीक काम किया लेकिन जब मैं webkit ड्राइवर को स्विच करने के js बातचीत का परीक्षण करना चाहता था, मुझे लगता है कि अपवाद (यूआरएल लोड करने में असमर्थ हो गया है: file: /// उत्पादों (Capybara :: चालक :: वेबकिट :: WebkitInvalidResponseError))।

मुझे क्या करना था पथ मैं यात्रा करने के लिए है, तो तरह से पारित कर दिया बदल गया था:

visit "/foos/5" 

उत्तराधिकारी !!

1

यहां एक और संभावित गोचाचा है, जो दूसरों के लिए पोस्ट किया गया है, जो इस मुद्दे को हो सकता है। मैं एक्शन कैशिंग का परीक्षण कर रहा था, और कुंजी रेल उत्पन्न करता है जैसे "विचार/www.example.com/उत्पादों"। यह तब भी होता है जब आप url के रूप में products_path का उपयोग करते हैं। यह आपके सर्वर का नाम सेट करने की आवश्यकता को जन्म दे सकता है ताकि आप पहले से जान सकें कि कैश कुंजी क्या उम्मीद करनी है। यूआरएल लोड करने में असमर्थ: file: /// उत्पादों (Capybara :: चालक :: वेबकिट :: WebkitInvalidResponseError) लेकिन एक बार मैं भी app_host कॉन्फ़िगर यह शुरू होता है

संबंधित मुद्दे