अवलोकन: क्रोमड्रिवर सामान्य रूप से एक मशीन पर काम करता है लेकिन दो अन्य समान मशीनों पर बेहद धीरे-धीरे काम करता है।सेलेनियम ग्रिड और .net
सेटअप:
- कोडिंग और परीक्षण के वितरण के लिए सेलेनियम ग्रिड के लिए नेट का उपयोग कर Webdriver सेलेनियम। परीक्षण चलाने के लिए विजुअल स्टूडियो 2010 के भीतर एमएसटीएस्ट का उपयोग किया जा रहा है।
- एक 64 बिट विंडोज 7 स्थानीय मशीन हब
तीन 32-बिट विन 7 रिमोट मशीन (उनमें से दो आभासी हैं) मेरे स्थानीय नेटवर्क पर सभी नोड्स के रूप में कॉन्फ़िगर किए गए हैं। यहाँ दूरस्थ मशीनों पर नोड्स शुरू करने के लिए इस्तेमाल किया आदेश है:
जावा जार c: \ seleniumWebDriver \ seleniumGrid \ सेलेनियम-server-स्टैंडअलोन-2.31.0.jar -role नोड -hub http://XXX.XXX.XXX.XXX:4444/grid/register -browser "browserName = क्रोम ", maxInstances = 4 -Dwebdriver.chrome.driver =" C: \ seleniumWebDriver \ chromedriver.exe "
ड्राइवर कोड के भीतर से इस तरह शुरू की है:
DesiredCapabilities क्षमता = नए DesiredCapabilities() ; क्षमता .सेट क्षमता (क्षमता टाइप करें। ब्राउजर नाम, ब्राउज़र); चालक = नया रिमोट वेब ड्राइवर (नया उरी (हबउआरएल), क्षमता);
उपरोक्त "ब्राउज़र" और "hubUrl" चर एक app.config फ़ाइल के माध्यम से चलाया जाता है जो रनटाइम पर बनाया गया है। इस मामले के लिए, ब्राउज़र = क्रोम।
समस्या:
जब मैं सेटअप मशीन 212 उपरोक्त आदेश का उपयोग कर (जो एक आभासी मशीन है) एक क्रोम नोड के रूप में, और उसके बाद केंद्र से स्क्रिप्ट लॉन्च करते हैं, मैं देख रहा हूँ क्रोम उचित रिमोट मशीन में शुरू होता है और सामान्य रूप से चलता है। यह प्रति सेकेंड 5-10 कमांड के बीच फ़ील्ड करता है।
जब मैं मशीन 78 (वर्चुअल मशीन) या मशीन 103 (असली मशीन) को उसी तरीके से नोड के रूप में सेट करता हूं, और उसके बाद हब से स्क्रिप्ट लॉन्च करता है, तो मुझे नोड ठीक से क्रोम शुरू होता है। हालांकि, यह बहुत धीमी गति से चलता है, जैसे प्रति कम या कम 1 कमांड।
अन्य जानकारी: जैसा कि मैंने कहा, पर एक मशीन क्रोम सामान्य रूप से काम करता है, लेकिन दूसरों पर, बहुत धीमे चलता है। फ़ायरफ़ॉक्स और आईई, जब नोड्स के रूप में कॉन्फ़िगर किया गया, सामान्य रूप से काम करते हैं।
मैंने अन्य मशीनों के साथ मशीन 212 (जो ठीक से काम करता है) की तुलना की है और अंतर नहीं मिल सकता है। सभी मशीनें 'सेलेनियम-सर्वर-स्टैंडअलोन-2.31.0.jar' और क्रोमड्राइवर का एक ही संस्करण उपयोग कर रही हैं।
ऐसा नहीं लगता है कि नोड मशीनों को ओवरलोड किया जा रहा है। साथ ही, यह प्रदर्शन में एक बहुत ही लगातार अंतर है जो नेटवर्क या मशीनों पर किसी भी उतार-चढ़ाव वाले भार से संबंधित प्रतीत नहीं होता है।
मेरे नेटवर्क तकनीक ने सत्यापित किया है कि ये सभी मशीनें नेटवर्क पर समान रूप से कॉन्फ़िगर की गई हैं।
क्या किसी ने इससे पहले ऐसा कुछ देखा है?
संपादित करें 1: मैंने आज लॉग इन किया है और सभी तीन दूरस्थ मशीन धीरे-धीरे क्रोम चला रहे हैं। उनमें से एक सामान्य था, लेकिन अब वे सब धीमे हैं।
नोट: यह समस्या मौजूद है या नहीं मैं दृश्य स्टूडियो के भीतर से MSTest का उपयोग कर परीक्षण चलाने के लिए या कि क्या मैं MSTest कमांड लाइन का उपयोग कर उन्हें चलाते हैं। कॉल "C: \ प्रोग्राम फ़ाइलें (x86) \ माइक्रोसॉफ्ट विजुअल स्टूडियो 10.0 \ कुलपति \ vcvarsall.bat" x86_amd64 MSTest/testcontainer: "पथ \ धुआँ टेस्ट 4.dll" – Sky
क्या आप देख पा रहे हैं जब आप मैन्युअल रूप से क्रोम का उपयोग धीमी वीएम में? क्या पेज अन्य मशीनों के रूप में तेजी से लोड हो रहे हैं? –
हां, जब मैं मैन्युअल रूप से चलाता हूं, यह सामान्य गति पर काम करता है। – Sky