2011-03-30 11 views
6

मैं कस्टम फ़ायरफ़ॉक्स प्रोफ़ाइल को डिफॉल्टसेलेनियम कन्स्ट्रक्टर में पास करके सेलेनियम सर्वर शुरू करने का प्रयास कर रहा हूं। यह निर्दिष्ट यूआरएल के साथ ब्राउज़र खोलता है।सेलेनियम सर्वर कस्टम फ़ायरफ़ॉक्स प्रोफाइल के लिए शुरू नहीं हो रहा है

DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, "*custom \"C:/Program Files/Mozilla Firefox/firefox.exe\"",ReadConFile.readcoFile("serverName")); 
    selenium.start(); 

लॉग

16:39:19.246 INFO - Allocated session 4eb63d37a4ba4d2fb4e351f8f59e3ea6 for https://<myURL>, launching... 

तो यह उस तरह रहता है और सर्वर शुरू नहीं करता है है।

हालांकि, अगर मैं कस्टम प्रोफ़ाइल का उपयोग नहीं करता तो यह ठीक काम करता है।

DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, "*chrome",ReadConFile.readcoFile("serverName")); 
selenium.start(); 

मुझे लॉन्च कस्टम प्रोफाइल की आवश्यकता है क्योंकि मैंने https के लिए आवश्यक कुछ साइट प्रमाण पत्र सहेजे हैं। इसके अलावा, मैं इसे ग्रहण से निष्पादित कर रहा हूं।

मुझे लगता है कि मेरा सर्वर कस्टम प्रोफ़ाइल लॉन्च करने के लिए कॉन्फ़िगर नहीं किया गया है। इसमें मेरी मदद करो।

+0

आप जावा में सेलेनियम सर्वर भी शुरू कर सकते हैं। [यहां] [1] देखें। [1]: http://stackoverflow.com/questions/2341109/starting-selenium-with-custom-firefox-profile-from-eclipse/4600601#4600601 –

उत्तर

6

start आदेश वास्तव में, दर असल अपने सेलेनियम सर्वर प्रारंभ नहीं हो रही यह अपनी पसंद के ब्राउज़र के साथ एक पहले से ही चल रहा है सर्वर से अपने सेलेनियम वस्तु को जोड़ने है।

वास्तव में सेलेनियम [जेट्टी वेब] सर्वर है कि भेजता है/आपके द्वारा निर्दिष्ट ब्राउज़र के माध्यम से परीक्षण के अंतर्गत आपके आवेदन को आदेश प्राप्त करता है शुरू करने के लिए एक बैच फ़ाइल और स्विच rs79 लिए बात कर रहा है का उपयोग करें।

java -jar selenium-server-standalone-2.0a5.jar -firefoxProfileTemplate C:\custom-firefox-profile 

अब आप एक सच्चे सेलेनियम सर्वर डिफ़ॉल्ट "4444" बंदरगाह के साथ अपने देव मशीन (स्थानीय होस्ट) पर चल रहे हैं: अपने बैच फ़ाइल की सामग्री को अपनी लाइन को शामिल करना चाहिए। यह निर्दिष्ट करेगा कि कोई भी फ़ायरफ़ॉक्स ब्राउज़र परीक्षण इस प्रोफ़ाइल का उपयोग करेगा।

अब आप अपने DefaultSelenium निर्माता, असाइनमेंट, और अन्य कॉल इस तरह दिख सकता:

DefaultSelenium selenium = new DefaultSelenium("localhost", 4444, "*firefox","http://www.server.com"); 
selenium.start() 
selenium.open("myApp/") 

फ़ायरफ़ॉक्स कि सेलेनियम सर्वर शुरू होता है, अपने वांछित आधार URL के साथ बैच फ़ाइल में बताया गया कस्टम प्रोफ़ाइल का उपयोग शुरू कर देंगे, और फिर अपने वांछित आवेदन [यूआरएल] में नेविगेट करें। यदि आप "http://www.server.com/" से अपना परीक्षण शुरू कर रहे हैं और "http://www.server.com/myApp" नहीं हैं, तो आप अंतिम खुले लाइन को छोड़ सकते हैं।

+0

वर्तमान सेलेनियम कार्यान्वयन जांच के लिए http://stackoverflow.com/a/28983844/1266040 – abrasadera

1

जब आप सेलेनियम आरसी सर्वर का आह्वान करते हैं, तो अतिरिक्त -firefoxProfileTemplate खंड का उपयोग करके पथ निर्दिष्ट करें। उदाहरण के लिए -

java -jar selenium-server-standalone-2.0a5.jar -firefoxProfileTemplate C:\custom-firefox-profile 

यह आप सभी बाइंडिंग आप कस्टम प्रोफ़ाइल भीतर बचाया है उपयोग करने के लिए सक्षम हो जाएगा।

+0

मैं ग्रहण का उपयोग कर सर्वर शुरू कर रहा हूँ। मैं फ़ायरफ़ॉक्सप्रोफाइल टेम्पलेट का उपयोग शुरू करने के लिए इसे कैसे कॉन्फ़िगर कर सकता हूं। – 9ikhan

0

आप जावा में सेलेनियम सर्वर भी शुरू कर सकते हैं here देखें।

1
  1. आप अपने परीक्षण में डिफ़ॉल्ट के रूप में Fifefox प्रोफ़ाइल है करना चाहते हैं:
    क) डाउनलोड नवीनतम selenium-server: http://selenium-release.storage.googleapis.com/index.html
    ख) डाउनलोड नवीनतम Firefox
    ग)FF प्रोफ़ाइल बनाएँ (आपकी कस्टम निर्देशिका में सबसे अच्छा) - मेरे मामले में "एटीएफ" https://support.mozilla.org/en-US/kb/profile-manager-create-and-remove-firefox-profiles
    डिफ़ॉल्ट निर्देशिका wh पहले प्रोफाइल सहेजे जाते हैं:

    C:\Users\johndoe\AppData\Roaming\Mozilla\Firefox\Profiles 
    

    घ) मेरे मामले मैं FF 36 और selenium-server-standalone-2.45.0.jar
    भागो selenium server का उपयोग में:

    java -jar C:\driver\selenium-server-standalone-2.45.0.jar -Dwebdriver.firefox.profile=atf 
    

    फिर इसे अपने कोड में देखें:

    driver = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub',  
             desired_capabilities=DesiredCapabilities.FIREFOX) 
    
  2. यदि आप विशेष लाभ का संदर्भ लेना चाहते हैं (डिफ़ॉल्ट नाम "MyProfile" प्रोफ़ाइल के लिए फ़ोल्डर उत्पन्न यहाँ मैं का उपयोग करें) अपने कोड में इले:

    profile_path = C:/Users/johndoe/AppData/Roaming/Mozilla/Firefox/Profiles/2zvl3dxx.myProfile" 
    fp = webdriver.FirefoxProfile(profile_path) 
    driver = webdriver.Remote(command_executor='http://127.0.0.1:4444/wd/hub', 
             desired_capabilities=DesiredCapabilities.FIREFOX, 
             browser_profile=myProfile) 
    
  3. आप कस्टम प्रोफ़ाइल को प्रमाण-पत्र में जोड़ सकते हैं
    क) कस्टम प्रोफ़ाइल के साथ भागो ब्राउज़र
    ख) जोड़ें प्रमाण पत्र
    ग) फ़ायरफ़ॉक्स वरीयताओं में विकल्प टिक याद रखें/उन्नत/प्रमाण पत्र
    Select one automatically
    प्रमाण पत्र हर बार के रूप में आप का परीक्षण पेज पहुंच स्वीकार करने के लिए पूछ रहा से बचने के लिए
    घ) पुनः प्रारंभ ब्राउज़र
    ई) नेविगेट पृष्ठ पर परीक्षण किया जाएगा क्या और स्वीकार करते हैं User Identification Request
    च) बंद फ़ायरफ़ॉक्स और कस्टम प्रोफ़ाइल का आनंद सेलेनियम सर्वर से उपलब्ध प्रमाण पत्र के साथ :)

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

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