google chrome - बिना किसी डिस्प्ले वाले लिनक्स सर्वर पर क्रोम वेबड्राइवर चला रहा है




google-chrome webdriver (2)

मैं लिनक्स सर्वर पर सेलेनियम 2 के क्रोम वेबड्राइवर का उपयोग करके स्वचालित परीक्षण चलाने के लिए चाहता हूं।

मैंने Xvfb का उपयोग करके सर्वर पर चलाने के लिए पहले ही फ़ायरफ़ॉक्स सेट कर लिया है (देखें http://www.semicomplete.com/blog/geekery/xvfb-firefox.html ) और क्रोम के साथ कुछ ऐसा करना चाहते हैं। क्या यह संभव है?


मुझे सेलेनियम + क्रोमेड्रिवर के साथ लिनक्स बॉक्स सेट करने की एक ही चुनौती का सामना करना पड़ रहा था, और यहां मेरे नोट्स हैं:

पूर्व reqs:

  1. सेलेनियम जार चलाने के लिए जेआरई स्थापित करें

  2. सेलेनियम सर्वर स्थापित करें

    जार फ़ाइल को https://code.google.com/p/selenium/downloads/list से पकड़ें)

  3. Xvfb स्थापित करें (ऐसा लगता है कि आपने पहले ही इस भाग को हासिल कर लिया है)

  4. अपने लिनक्स वितरण के लिए google-chrome इंस्टॉल करें

  5. क्रोम ड्राइवर डाउनलोड करें आप इसे यहां से पकड़ सकते हैं: https://sites.google.com/a/chromium.org/chromedriver/downloads

  6. अन्य सेलेनियम निर्भरताओं को स्थापित करें जिनकी आपको आवश्यकता हो सकती है (लेकिन ऊपर से क्रोमरेड्रायर काम करने के लिए न्यूनतम है)

चलाने के लिए:

  1. Xvfb चलाएं

Xvfb :1 -screen 5 1024x768x8 &

export DISPLAY=:1.5

  1. ChromeDriver विकल्पों के साथ सेलेनियम सर्वर जार चलाएं। यह ऐसा कुछ दिखाई देगा:

java -jar selenium-server-standalone-2.30.0.jar -Dwebdriver.chrome.bin=/path/to/google-chrome -Dwebdriver.chrome.driver=/path/to/chromedriver

  1. सेलेनियम सर्वर लॉग को इस तरह कुछ आउटपुट करना चाहिए:

मार्च 1 9, 2013 10:07:27 पूर्वाह्न org.openqa.grid.selenium.GridLauncher मुख्य जानकारी: एक स्टैंडअलोन सर्वर लॉन्च करना

सिस्टम प्रॉपर्टी webdriver.chrome.bin को सेट करना {google-chrome} का स्थान

सिस्टम प्रॉपर्टी webdriver.chrome.driver को {क्रोमेड्रिवर के स्थान} पर सेट करना

10: 07: 34.258 जानकारी - रिमोट वेब ड्राइव उदाहरणों से कनेक्ट होना चाहिए: http://127.0.0.1:4444/wd/hub

10: 07: 34.259 जानकारी - संस्करण जेटी / 5.1.x 10: 07: 34.259 जानकारी - एचटीपी कॉनटेक्स्ट [/ सेलेनियम-सर्वर / ड्राइवर, / सेलेनियम-सर्वर / ड्राइवर] शुरू किया ...

संदर्भ: http://www.yann.com/en/use-xvfb-selenium-and-chrome-to-drive-a-web-browser-in-php-23/08/2012.html

चीयर्स!


मैं ChromeDriver के लिए प्रोग्रामेटिक रूप से ऐसा करने का कोई तरीका नहीं ढूंढ पाया जैसा कि आप फ़ायरफ़ॉक्सबाइन के साथ कर सकते हैं।

मैंने एक सुधार अनुरोध जमा कर दिया है जिसमें इसे अनुमति देने के लिए एक पैच संलग्न है। आप इसे यहां देख सकते हैं: http://code.google.com/p/selenium/issues/detail?id=2673

संपादित करें: आप स्टीफन से नीचे प्रतिक्रिया देख सकते हैं कि इसका उपयोग कैसे करें अब परिवर्तन विलय कर दिया गया है .: https://.com/a/16619608/998442





xvfb