2015-03-25 10 views
15

नया उपयोगकर्ता यहाँ।प्रोटैक्टर के साथ चलाने के लिए एक अच्छा हेडलेस ब्राउज़र क्या है?

मेरी धुआं और प्रतिगमन परीक्षण के निर्माण के घंटे के बाद, मुझे लगता है कि phantomjs चांदा के साथ चलाने के लिए एक मुसीबत माना जाता है ऑनलाइन कई मामलों को पढ़ने के बाद पता चला। जेनकिंस अब तक किए गए सभी कार्यों के लिए प्रेतोज़ चला रहा है।

वे ci जो एक विंडोइंग प्रणाली स्थापित नहीं है के भाग के रूप में चलाने के लिए इन परीक्षणों की जरूरत है।

तो अगर मैं पूरी तरह से हेडलेस ब्राउज़र या हेडलेस क्रोम (जो सबसे अधिक फायदेमंद होगा) और इसे सेट अप करने के लिए चरण-दर-चरण की सिफारिश है तो मैं इसकी सराहना करता हूं। मेरे पास पहले से conf.js और e2e.conf.js फ़ाइल है। मेरा कोड क्रोम के साथ पूरी तरह से ठीक काम करता है।

मैं एक आईमैक और सेलेनियम webdriver पर हूँ, मेरा मानना ​​है।

संपादित करें: समस्या = चांदा phantomjs साथ काम नहीं करता। मैंने जो किया है = अलग-अलग वेब तत्वों का उपयोग करें और अगर किसी को भी ऐसी ही स्थिति का सामना करना पड़ता है तो गुगल हो जाएं। हेडलेस ब्राउजर के लिए भी गुगल किया गया जो प्रोटैक्टर के लिए काम करता था, उपयुक्त समाधान खोजने में असमर्थ था।

+3

हमें पुस्तक, टूल, सॉफ़्टवेयर लाइब्रेरी, ट्यूटोरियल या अन्य ऑफ़-साइट संसाधन की सिफारिश करने या खोजने के लिए पूछे जाने वाले प्रश्न स्टैक ओवरफ़्लो के लिए ऑफ-विषय हैं क्योंकि वे राय वाले उत्तरों और स्पैम को आकर्षित करते हैं। क्या आपके वर्तमान सेटअप के साथ कोई विशिष्ट समस्या है? यदि ऐसा है, तो समस्या का वर्णन करें और इसे हल करने के लिए अभी तक क्या किया गया है। – honk

उत्तर

8

आपका सबसे अच्छा शर्त contin है क्रोम के साथ। कुछ काम के साथ आप इसे सीआई के माध्यम से और बिना किसी तरीके से काम करने के लिए प्राप्त कर सकते हैं - हम जेनकिंस और डॉकर उबंटू सर्वर का उपयोग करके ऐसा करते हैं जो हेडलेस हैं।

आप Chrome कॉन्फ़िगर करने के लिए XVFB का उपयोग कर नेतृत्वहीन चलाने की आवश्यकता होगी। आप यहां https://gist.github.com/addyosmani/5336747

बताते हैं कि आप मैक पर हैं ताकि आप या तो अपनी मशीन पर डॉकर के माध्यम से हेडलेस परीक्षण चला सकें या आप सीआई परीक्षणों के लिए दूसरी कॉन्फ़िगरेशन सेट कर सकें।

एक और संसाधन http://tobyho.com/2015/01/09/headless-browser-testing-xvfb/

+2

मैंने एक डॉकर छवि https://hub.docker.com/r/webnicer/protractor-headless/ बनाई है जो सभी सेटअप परेशानी को दूर करता है और साथ ही xvfb के साथ भी काम करता है। मुझे आशा है कि यह उपयोगी होगा। मेरे ब्लॉग पोस्ट पर तर्क का वर्णन किया गया है: http://float-middle.com/protractor-and-headless-chrome-on-docker-with-video-tutorial/ –

1

मैं एक सिर के साथ सामान्य ब्राउज़रों में परीक्षण जारी रहेगा, लेकिन एक सेवा के रूप में एक दूरस्थ सेलेनियम सर्वर का प्रयोग करेंगे - Sauce Labs या BrowserStack, देखें:

1

आप CodeShip या Drone.io के खिलाफ अपने कोणमापक परीक्षण चला सकता है, which ऑफ़र Chrome की both मुक्त करने के लिए और/या Firefox चला नेतृत्वहीन। वास्तव में नहीं ...

9

यदि कोई यहां पहुंच गया - तो उत्तर पुराना हो गया है। क्रोमियम (अगली रिलीज पर) अब हेडलेस मोड का समर्थन करता है। कड़ी मेहनत करने की जरूरत नहीं है।

आप यहाँ और अधिक पढ़ सकते हैं:

https://developers.google.com/web/updates/2017/04/headless-chrome

यहाँ कमांड लाइन

chrome \ 
--headless \     # Runs Chrome in headless mode. 
--disable-gpu \    # Temporarily needed for now. 
--remote-debugging-port=9222 \ 
https://www.chromestatus.com # URL to open. Defaults to about:blank. 

से एक उदाहरण है और आप बस क्रोम के लिए क्षमताओं के साथ चांदा को गति प्रदान कर सकते हैं:

Activating chrome language flags when activating from protractor (selenium)

यहाँ configuraiton मैं उपयोग कर रहा हूँ

capabilities: { 
    'browserName': browserName, 
    chromeOptions: { 
     binary: '/Users/guymograbi/Downloads/chrome-mac/Chromium.app/Contents/MacOS/Chromium', 
     args: ['--headless','--disable-gpu'] 
    } 
    }, 

अद्यतन है - क्रोम के नए संस्करणों

मेरी वातावरण में की आवश्यकता नहीं है binary संपत्ति मैंने पाया मैं क्रोम के नए संस्करण के रूप में binary संपत्ति पर उपलब्ध है हटा सकते हैं स्थिर शाखाओं

मेरे चांदा विन्यास

capabilities: { 
    'browserName': 'chrome', 
    chromeOptions: { 
     args: [ '--headless', '--disable-gpu', '--no-sandbox', '--window-size=1920x1200' ] 
    }, 

    }, 

है और यह w के लिए सुचारू रूप से काम करता है अब eeks। अत्यधिक सिफारिशित।

अपडेट - कर्म में यह करने के लिए कैसे कर्म में बिना सिर क्रोम का उपयोग करते हुए सुपर आसान

है सुपर आसान है:

browsers: 'ChromeHeadless' 

यह क्रोम लोडर और सब कुछ के साथ काम करना चाहिए। more info

0

आप Chrome रखी है, तो 59+ स्थापित, क्रोम निम्नलिखित ध्वज के साथ शुरू:

--headless 

मुझे पता है अगर आप अधिक मदद की जरूरत है तो कृपया, config लिखेंगे आप :)

का आनंद के लिए
संबंधित मुद्दे