2012-10-17 13 views
6

मैं इस त्रुटि हो रही पर रखने से परिभाषित नहीं है:रेल 3.1 Capybara jQuery

wait_until do 
    page.evaluate_script('jQuery.active') == 0 
end 

मैं एक डिबगर में डाल दिया और jQuery पुस्तकालय के लिए देख लिया है:

Failure/Error: page.evaluate_script('jQuery.active') == 0 
Selenium::WebDriver::Error::JavascriptError: 
    ReferenceError: jQuery is not defined 

जब भी मैं स्क्रिप्ट का उपयोग । यह विशेष पृष्ठ पर मौजूद था।

क्या इस काम के लिए मुझे कॉन्फ़िगर करने की आवश्यकता है?

संपादित करें:

Capybara और RSpec के संस्करण हैं:

rspec-रेल-2.11.0 rspec-2.11.0 capybara-1.1.2

+0

आरएसपीसी/कैपिबरा का कौन सा संस्करण आप उपयोग कर रहे हैं? असल में, * यह * आरएसपीईसी है जिसमें आप इसे चला रहे हैं, या ककड़ी, या कुछ और? –

+0

यह rspec है लेकिन इसमें capybara का उपयोग कर रहा है। –

+0

वे कौन से संस्करण हैं? –

उत्तर

0

त्रुटि का अर्थ है अपने उदाहरण करता है जेएस है: सच है, लेकिन यहां एक पूरा उदाहरण पोस्ट करना अच्छा होगा।

मैंने पाया कि डिफॉल्ट सेलेनियम ड्राइवर से वेबकिट में स्विच करने से मेरे लिए कुछ अलग-अलग समस्याएं हल हो गईं, और उदाहरण भी बहुत तेजी से चलते हैं।

कोई जवाब नहीं, प्रति से, लेकिन यह देखने का प्रयास करने लायक है कि यह आपके विशेष मुद्दे को हल करता है या नहीं।

0

मैं एक ही मुद्दे में भाग गया। मैंने इसे परीक्षण में बाध्यकारी.pry छोड़कर और सेलेनियम ब्राउज़र को रोककर हल किया। निरीक्षण पर, मैंने देखा कि जेएस कंसोल ने त्रुटियों को फेंक दिया था: सेलेनियम को .js फ़ाइल नहीं मिल सका।

समस्या की जड़ वसंत के साथ पहले से लोड किए गए पुराने रेल परीक्षण अनुप्रयोग था। मैंने एक मणि (पल-टाइमज़ोन-रेल) स्थापित किया था लेकिन अभी भी 'वसंत आरएसपीईसी' के साथ अपने परीक्षण चलाने के लिए जारी था, जिसमें जेएस फ़ाइल खोजने के लिए उचित निर्देशिका नहीं थी।

वसंत को फिर से शुरू करने से समस्या ठीक हो गई।

0

मुझे एफएफ 41.0.2 और कैपिबरा-वेबकिट 3.4.0 के साथ एक ही समस्या थी। एफएफ को 53.0.3 तक अपग्रेड करने के बाद यह समस्या