11

के साथ ट्रिगर नहीं हो रही है, मैं एएसपीनेट एमवीसी 4 एप्लिकेशन पर कोडित-यूआई परीक्षण प्रोजेक्ट चलाने की कोशिश कर रहा हूं। एप्लिकेशन में शामिल विभिन्न AJAX कॉल शामिल हैं। जब मैं इसे मैन्युअल रूप से परीक्षण करता हूं, तो यह ठीक काम करता है लेकिन जब मैं कोडेड-यूई परीक्षण प्रोजेक्ट का उपयोग करके इसका परीक्षण करता हूं, यह टूट जाता है क्योंकि AJAX कॉल में, कॉलबैक फ़ंक्शन को कॉल नहीं किया जाता है। क्या कोई मुझे बता सकता है कि मैं यहां क्या खो रहा हूं। अग्रिम धन्यवाद।Jquery AJAX सफलता कोडित यूआई परीक्षण प्रोजेक्ट

+0

स्टैक ओवरव्लो में आपका स्वागत है! यदि आप प्रासंगिक कोड पोस्ट करते हैं, तो यह और अधिक उपयोगी होता है कि स्पष्टीकरण के साथ और कैसे * बिल्कुल * टूट जाता है। –

+0

मैं जोड़ सकता हूं कि पृष्ठ पर किसी भी उपयोगकर्ता कार्रवाई $ .ajax सफलता को तोड़ती है और यह केवल jQuery 2.0 पर है। –

उत्तर

19

क्या गलत

माइक्रोसॉफ्ट के कोडित यूआई ब्राउज़र जा रहा है पर नज़र रखने के लिए XMLHttpRequest ऑब्जेक्ट शिम को जावास्क्रिप्ट injects। पृष्ठ में कोई भी AJAX कॉल वास्तविक XMLHttpRequest की बजाय इस शिम का उपयोग करेगा। शिम मानता है कि आपका पूरा कॉलबैक XMLHttpRequest की ऑनरस्टेस्टेन्चेंज प्रॉपर्टी से जुड़ा हुआ है, लेकिन jQuery 2.0 नए ऑनलोड और आतंक घटनाओं का उपयोग करता है, इसलिए कॉलबैक कभी भी शिम द्वारा नहीं बुलाया जाता है।

वर्कअराउंड

काम के आसपास अपने परीक्षण परियोजना के लिए App.config फ़ाइल के लिए निम्न जोड़ने के लिए है:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="WebWaitForReadyLevel" value="3"/> 
    </appSettings> 
</configuration> 

सेटिंग WebWaitForReadyLevel से 3 इंजेक्शन लगाने से बंद हो जाता है कोडित यूआई WebBrowser AJAX कॉल और टाइमर ट्रैक करने के लिए जावास्क्रिप्ट। jQuery को एक वास्तविक XMLHttpRequest मिलेगा, और आपके AJAX कॉलबैक फिर से काम करेंगे।

+0

लाइफ सेवर। मुझे वेब पर इस बारे में न्यूनतम जानकारी मिल रही है - क्या आपके पास समस्या या समाधान के लिए कोई संदर्भ है? – Andyrooger

+0

यह भी देखें: https://fluentbytes.com/how-to-prevent-codedui-tests-from-breaking-angular-ajax-calls/। – Appulus

+0

यह jquery 2.0.0 के लिए काम करता है लेकिन 2.0.2 के लिए नहीं –

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