2011-08-24 18 views
11

मुझे हाल ही में ऐसी वेबसाइट के साथ किसी समस्या को डीबग करने में मदद करने के लिए कहा गया था जिससे आईई 8 कुछ स्थितियों में क्रैश हो गया। वेबसाइट का मालिक होने वाली कंपनी समस्या को पुन: उत्पन्न करने में असमर्थ थी, लेकिन उन्हें प्रभावित उपयोगकर्ताओं से कई रिपोर्ट प्राप्त हो रही थीं।JQuery और IE8 क्रैश पहचान

मैं समस्या को पुन: पेश करने में सक्षम था, और अंततः पाया कि यह this jQuery/IE 8 issue के कारण हुआ था। समस्या तब होती है जब सीएसएस का उपयोग कर body टैग पर पृष्ठभूमि छवि लागू होती है, और jQuery लोड हो जाता है। JQuery बग टिकट टिप्पणियों पर एक पोस्ट this jsFiddle example प्रदान करता है, जो मेरे लिए कम से कम समस्या को पुन: उत्पन्न करता है।

  • IE8 के साथ http://fiddle.jshell.net/ZKPZq/6/ पर जाएं।
  • सही परिणाम स्क्रीन में क्लिक करें, और यह ताज़ा करना - IE8

समस्या मैं एक परीक्षण वातावरण में मज़बूती से इस प्रजनन करने पर क्रैश होगा। क्या कोई इस तरह की चीज के परीक्षण के तरीकों का सुझाव दे सकता है? JsFiddle उदाहरण द्वारा उपयोग किए गए सटीक कोड की प्रतिलिपि बनाने के बावजूद, मैं स्थानीय रूप से समस्या को लगातार पुन: उत्पन्न करने में असमर्थ हूं - यह विशेष समय पर भरोसा कर सकता है, लेकिन मुझे यकीन नहीं है। मैं स्वचालित परीक्षण सूट में कुछ जोड़ना चाहता हूं जो इस समस्या की जांच करता है (jQuery फिक्स पहले लागू किया गया था, और गलती से बाद के संस्करण में हटा दिया गया था)।

ब्राउज़र क्रैश के लिए मैं कैसे परीक्षण कर सकता हूं? साइट पर्ल में लिखी गई है, और सेलेनियम और डब्ल्यूडब्ल्यूडब्ल्यू :: मैकेनाइजेशन का उपयोग करके कुछ स्वचालित परीक्षण किए जाते हैं।

नोट: मैं Pro Webmasters पर इस पोस्टिंग, लेकिन FAQ पढ़ माना जाता है, मुझे लगता है कि इसे और अधिक एसओ लिए अनुकूल है।

+2

मुझे लगता है कि यह सीधे वेबमास्टर्स और एसओ के बीच आधा रास्ते है। एसई साइटों के बीच की रेखा कभी-कभी अविश्वसनीय रूप से अस्पष्ट होती है। मंडलबग के लिए –

उत्तर

7

मुझे नहीं लगता कि आप दोनों यूनिट परीक्षणों और तनाव परीक्षणों को चलाने के अलावा कुछ भी कर सकते हैं, जितना संभव हो सके कारकों के संयोजन के विभिन्न प्रकार के साथ।

यह तथाकथित "Mandelbugs" की प्रकृति है।

+2

+1 - मुझे यह पसंद है :-) – Mike

0

आप SauceLabs पेशकशों में से कुछ के साथ परीक्षण करने का प्रयास कर सकते हैं जो क्रॉस-प्लेटफ़ॉर्म, क्रॉस-ब्राउज़र परीक्षण क्षमताओं प्रदान करते हैं।

1

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

डोम तैयार होने के बाद शैली की स्थापना के तुरंत बाद से। मेरा अनुमान है कि जेक्यू ने कुछ आईई 8 को संदर्भित किया है कि यह अभी तक साझा करने के लिए तैयार नहीं है, क्योंकि यह वास्तव में कुछ डीओएम लोडिंग प्रक्रिया में मूर्खतापूर्ण चल रहा है।

मैंने ऐप को फिर से खोलने के बाद भी IE8 में स्थायी रूप से क्रैश होने वाले डेवलपर टूल की कई घटनाएं देखी हैं। यदि इसके लिए नहीं तो मैं ऐसी बगों पर असंभव विचार करता हूं।

संपादित करें: निष्पक्ष होने के लिए, जेक्यू शायद 1.62 में कुछ अजीब कर रहा है या यह बग सामान्य रूप से अधिक प्रसिद्ध होगा। आईई 8 अब कुछ साल से बाहर हो गया है।