6

मेरे पास मेरे सभी परीक्षण उबंटू बॉक्स में चलते हैं। परीक्षण PHP में लिखे गए हैं। वे फ़ायरफ़ॉक्स ड्राइवर और क्रोम ड्राइवर के साथ सभी ठीक काम करते हैं। मैं एक स्टैंडअलोन सेलेनियम सर्वर (सेलेनियम-सर्वर-स्टैंडअलोन-2.25.0.jar) का उपयोग कर रहा हूं जो एक ही बॉक्स में चलता है। हाल ही में मुझे आईई प्लेटफ़ॉर्म के खिलाफ परीक्षण लिखना होगा। मैंने कुछ चीजों की कोशिश की है लेकिन इस बिंदु तक मुझे अभी भी यकीन नहीं है कि मेरे विशेष परिदृश्य के लिए आईई ड्राइवर को सेट करने का सही तरीका क्या है।रिमोट बॉक्स पर आईई वेबड्राइवर कैसे सेट करें

मैंने उसी यूबंटू बॉक्स में मोनो के साथ आईई स्थापित करने का प्रयास किया है, लेकिन मुझे स्थापना के दौरान बहुत सारी समस्याएं मिलीं, और जब मैंने उन समस्याओं से छुटकारा पा लिया और इसे बनाया ताकि मैं अपनी कमांड लाइन से आईई चला सकूं, अभी भी मेरे परीक्षणों के लिए काम नहीं किया है।

मैं यहाँ इस विशेष प्रलेखन के माध्यम से पढ़ने: http://code.google.com/p/selenium/wiki/InternetExplorerDriver और एक खिड़कियों बॉक्स पर के माध्यम से पीछा किया, जब तक मैं इस देखा:

IEDriverServer.exe द्वारा शुरू HTTP सर्वर केवल स्वीकार करने के लिए एक पहुँच नियंत्रण सूची सेट स्थानीय मशीन से कनेक्शन, और दूरस्थ मशीनों से आने वाले कनेक्शन को अस्वीकार करता है। वर्तमान में, को IEDriverServer.exe पर स्रोत कोड को संशोधित किए बिना बदला नहीं जा सकता है। रिमोट मशीन पर इंटरनेट एक्सप्लोरर ड्राइवर चलाने के लिए, अपने भाषा बाध्यकारी के रिमोट वेब ड्राइव के समकक्ष जावा स्टैंडअलोन रिमोट सर्वर का उपयोग करें।

इसलिए मैंने विंडोज मशीन पर सेलेनियम-सर्वर-स्टैंडअलोन-2.25.0.jar डाउनलोड किया और इसे शुरू किया; मेरे IEDriverServer.exe को C: \ windows \ system32 \ में रखा गया था जो मेरे पथ में है। फिर मैंने विंडोज़ बॉक्स पर चल रहे सेलेनियम सर्वर को इंगित करने के लिए अपने यूबंटू बॉक्स में कोड बदल दिया। लेकिन अभी भी कोई भाग्य नहीं है।

मैंने थोड़ा गुस्सा किया, और ऐसे मामले हैं जहां लोग सफलतापूर्वक इसे चला रहे हैं। लेकिन वे एक जावा बाध्यकारी या सी # बाध्यकारी का उपयोग कर रहे हैं जो मुझे लगता है कि वे एक स्थानीय बॉक्स पर विकास कर रहे हैं। मुझे ऐसा कोई कामकाजी मामला नहीं मिला है जो मेरी तरह है:

एक उबंटू बॉक्स जहां PHP आधारित परीक्षण विंडोज़ पर चल रहे रिमोट सेलेनियम सर्वर से कनेक्शन चलाते हैं। एक सेलेनियम स्टैंडअलोन सर्वर चल रहा है के साथ और पथ में IEDriverServer.exe साथ

धन्यवाद एक खिड़कियों बॉक्स।

+0

यहां कुछ वास्तव में उपयोगी जानकारी होगी कि आप कौन सी PHP भाषा बाइंडिंग का उपयोग कर रहे हैं, PHP कोड का एक नमूना जो विफल रहता है, और जावा रिमोट सर्वर से आपको क्या त्रुटियां मिल रही हैं। – JimEvans

+0

मुझे भी वही समस्या है। ऐसा लगता है कि एक PHP परीक्षण से IE में दूरस्थ रूप से परीक्षण करने का कोई तरीका नहीं है। मैं भाषा बाध्यकारी के रूप में https://github.com/Nearsoft/PHP- सेलेनियम क्लाइंट का उपयोग कर रहा हूं। –

उत्तर

6

मुझे एक ही समस्या थी - लिनक्स पर काम करना और आईई 11 के खिलाफ अपने डब्ल्यूडी परीक्षण चलाने की इच्छा - और इसे काम करने के लिए मिला। मेरे और ओपी के बीच मुख्य अंतर यह है कि मेरे परीक्षण जावा में लिखे गए हैं।

मेरा लक्ष्य इस तरह था:

  • मेरे कार्य केंद्र: Ubuntu 14.04, परीक्षण जावा में लिखा।
  • Windows मशीन: साथ आईई 11.
  • मैं IE के खिलाफ मेरी परीक्षण उबंटू कार्य केंद्र से विंडोज बॉक्स, पर चलने (ताकि मैं पर मेरे पूरे देव वातावरण स्थापित करने की आवश्यकता नहीं करना चाहते कुछ वीएम विंडोज मशीन)।

मैं क्या किया:

  1. गॉट 7 विन & IE 11 VirtualBox के वी एम, माइक्रोसॉफ्ट (here) से डाउनलोड किया है, उस पर संचालित है।
  2. विंडोज बॉक्स में डाउनलोड किया गया: (ए) जावा जेआरई, (बी) Selenium Standalone Server जार (उस पृष्ठ पर "इंटरनेट एक्सप्लोरर ड्राइवर सर्वर" का भी उल्लेख नहीं किया गया है), (सी) Internet Explorer Driver
  3. मेरे वर्कस्टेशन और विंडोज बॉक्स के बीच होस्ट केवल नेटवर्क सेट अप करें। Here's प्रक्रिया का एक अच्छा विवरण। ब्लॉग पोस्ट में वीएम के बावजूद लिनक्स होने के बावजूद, यह विंडोज़ वीएम के लिए काफी काम करता है (अपने आईपी को खोजने के लिए "ifconfig" के बजाय कमांड प्रॉम्प्ट से "ipconfig" का उपयोग करें)।
  4. विंडोज बॉक्स पर, आधिकारिक इंटरनेट एक्सप्लोरर ड्राइवर पृष्ठ पर उल्लिखित कॉन्फ़िगर की गई चीजें, अनुभाग Required Configuration में। मामले में वे लिंक बदलने के लिए, मैं उन्हें यहाँ चिपकाने हूँ:
  • IEDriverServer निष्पादन डाउनलोड किया है और अपने रास्ते में रखा जाना चाहिए।
  • विंडोज विस्टा या विंडोज 7 पर आईई 7 या उच्चतर पर, आपको प्रत्येक जोन के लिए संरक्षित मोड सेटिंग्स को एक ही मान के रूप में सेट करना होगा। मान चालू या बंद हो सकता है, जब तक कि यह प्रत्येक क्षेत्र के लिए समान है। संरक्षित मोड सेटिंग्स सेट करने के लिए, टूल्स मेनू से "इंटरनेट विकल्प ..." चुनें, और सुरक्षा टैब पर क्लिक करें। प्रत्येक जोन के लिए, "संरक्षित मोड सक्षम करें" लेबल वाले टैब के निचले हिस्से में एक चेक बॉक्स होगा।
  • इसके अतिरिक्त, "उन्नत संरक्षित मोड" IE 10 और उच्चतर के लिए अक्षम होना चाहिए। यह विकल्प इंटरनेट विकल्प संवाद के उन्नत टैब में मिलता है।
  • ब्राउज़र ज़ूम स्तर 100% पर सेट किया जाना चाहिए ताकि देशी माउस ईवेंट सही निर्देशांक पर सेट किए जा सकें।
  • केवल आईई 11 के लिए, आपको लक्षित कंप्यूटर पर एक रजिस्ट्री प्रविष्टि सेट करने की आवश्यकता होगी ताकि ड्राइवर इंटरनेट एक्सप्लोरर के उदाहरण से कनेक्शन बनाए रख सके। 32-बिट विंडोज इंस्टॉलेशन के लिए, रजिस्ट्री संपादक में आपको जिस कुंजी की जांच करनी चाहिए वह HKEY_LOCAL_MACHINE \ सॉफ़्टवेयर \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_BFCACHE है। 64-बिट विंडोज इंस्टॉलेशन के लिए, कुंजी HKEY_LOCAL_MACHINE \ सॉफ़्टवेयर \ Wow6432Node \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_BFCACHE है। कृपया ध्यान दें कि FEATURE_BFCACHE उपकुंजी मौजूद हो सकती है या नहीं भी हो सकती है, और यदि यह मौजूद नहीं है तो इसे बनाया जाना चाहिए। महत्वपूर्ण: इस कुंजी के अंदर, के 0.

नोट मूल्य के साथ iexplore.exe नामक एक DWORD मान बनाने मैं पथ में IEDriverServer.exe के स्थान डाल की जरूरत नहीं थी, और नहीं पा सके " एन्हांस्ड प्रोटेक्टेड मोड "मेरी आईई 11 सेटिंग्स में (इसलिए ऐसा नहीं किया)।

  1. विंडोज बॉक्स पर, कमांड प्रॉम्प्ट से शुरू कर दिया (वे चाहिए दोनों चल रहा हो, मैं this issue पर पदों से यह पता लगा):
    • java -jar selenium-server-standalone-2.53.1.jar
    • IEDriverServer.exe
  2. संपादित मेरी परीक्षण की धारा सेट अप RemoteWebDriver उपयोग करने के लिए है, तो (192.168.56 की तरह।

    DesiredCapabilities capability = DesiredCapabilities.internetExplorer(); 
    driver = new RemoteWebDriver(new URL("http://192.168.56.101:4444/wd/hub"), 
        capability); 
    
  3. सामान्य रूप में मेरे Ubuntu कार्य केंद्र से परीक्षण Ran: 101 होस्ट विंडोज बॉक्स के केवल नेटवर्क आईपी) था mvn test myproject

और यह काम किया! :)

+0

आपके काम की जानकारी के लिए धन्यवाद –

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