2013-06-05 11 views
9

का उपयोग कर क्रोम ब्राउज़र लोड करने में समस्याएं मैं क्रोम ब्राउज़र में अपने परीक्षण चलाने में सक्षम नहीं हूं। मैं सेलेनियम-जावा 2.33.0 और कोडिंग के लिए जावा का उपयोग कर रहा हूं।सेलेनियम वेब ड्राइवर

नीचे दिए गए चरणों

System.setProperty("webdriver.chrome.driver", "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"); 
WebDriver driver = new ChromeDriver(); 
driver.get("http://www.google.com"); 

यह क्रोम ब्राउज़र को खोलता है और निम्न त्रुटि फेंकता है।

Exception in thread "main" org.openqa.selenium.remote.UnreachableBrowserException:  Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. 
Build info: version: '2.32.0', revision: '6c40c187d01409a5dc3b7f8251859150c8af0bcb', time: '2013-04-09 10:39:28' 
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.7.4', java.version: '1.6.0_35' 
Driver info: driver.version: ChromeDriver 
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:548) 
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:216) 
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:111) 
at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:115) 
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:161) 
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:107) 
at com.integration.RandomID.main(RandomID.java:14) 
Caused by: org.openqa.selenium.WebDriverException: Timed out waiting for driver server to start. 
Build info: version: '2.32.0', revision: '6c40c187d01409a5dc3b7f8251859150c8af0bcb', time: '2013-04-09 10:39:28' 
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.7.4', java.version: '1.6.0_35' 
Driver info: driver.version: ChromeDriver 
at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:165) 
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:62) 
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:527) 
... 6 more 
Caused by: org.openqa.selenium.net.UrlChecker$TimeoutException: Timed out waiting for [http://localhost:17036/status] to be available after 20018 ms 
at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:104) 
at org.openqa.selenium.remote.service.DriverService.start(DriverService.java:163) 
... 8 more 
Caused by: com.google.common.util.concurrent.UncheckedTimeoutException: java.util.concurrent.TimeoutException 
at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:143) 
at org.openqa.selenium.net.UrlChecker.waitUntilAvailable(UrlChecker.java:79) 
... 9 more 
Caused by: java.util.concurrent.TimeoutException 
at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:228) 
at java.util.concurrent.FutureTask.get(FutureTask.java:91) 
at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:130) 
... 10 more 

मैं गलत कहाँ जा रहा हूँ?

धन्यवाद, मनोज

+0

यह इंगित करता है कि ड्राइवर 'http: // localhost: 17036/status' लिंक तक नहीं पहुंच सकता है, यह बंदरगाह के कारण हो सकता है, ओएस ने पहले से ही किसी अन्य उद्देश्य के लिए बंदरगाह का उपयोग किया होगा। अपनी मशीन को पुनरारंभ करने का प्रयास करें। –

+0

@SajanChandran मैंने अपनी मशीन को फिर से शुरू करने का प्रयास किया लेकिन कोई भाग्य नहीं मिला :( – user2649233

+0

आपको क्रोम ड्राइवर https://code.google.com/p/chromedriver/downloads/list डाउनलोड करने और इसे अपने webdriver.chrome के लिए निर्दिष्ट करने की आवश्यकता है .driver var – art1go

उत्तर

22

अपने Chrome बाइनरी का प्रयोग न करें कि आप के साथ इंटरनेट ब्राउज़। इसे Chromedriver website से डाउनलोड करें, और अपने कोड में उस पथ को निर्दिष्ट करें।

यह लिंक समाधान अधिक विस्तार से समझाया गया है: http://www.gjdb.nl/?p=214:

जब आप अपने मैक के लिए WebDriver पर क्रोम चलाने के लिए, तो साइट के अनुसार के अनुसार करने के लिए http://code.google.com/p/selenium/wiki/ChromeDriver आप के लिए पथ निर्दिष्ट करने की आवश्यकता होगी चाहते हैं निम्न स्थान पर ब्राउज़र: "/ अनुप्रयोग/Google \ Chrome.app/Contents/MacOS/Google \ क्रोम"।

तो एक ChromeDriver उदाहरण बनाने के लिए जावा कोड होगा:

System.setProperty("webdriver.chrome.driver", "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"); 
driver = new ChromeDriver(); 

जब यह मैं निम्न अपवाद मिल चलाने के लिए कोशिश कर रहा।

org.openqa.selenium.remote.UnreachableBrowserException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. 
Build info: version: '2.31.0', revision: '1bd294d185a80fa4206dfeab80ba773c04ac33c0', time: '2013-02-27 13:51:26' 
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.8.3', java.version: '1.6.0_45' 
Driver info: driver.version: ChromeDriver 
... 

यह मैंने ChromeDriver का उपयोग करके तय किया है। http://code.google.com/p/chromedriver/downloads/list पर अपने संस्करण को डाउनलोड करें, इसे अनज़िप और इसका इस्तेमाल के रूप में पालन करें: अपने प्रारंभ खोज में chrome.exe के लिए

System.setProperty("webdriver.chrome.driver", "<unzip location>/chromedriver"); 
driver = new ChromeDriver(); 
+0

धन्यवाद। अब यह काम कर रहा है :) – user2649233

+2

नोट करें कि आपको अभी भी अपनी मशीन पर क्रोम इंस्टॉल करने की आवश्यकता है। चालक सिर्फ एक आवरण है। –

0

खोजें, फ़ाइल स्थान कॉपी & यूआरएल में यह दे:

System.setProperty("webdriver.chrome.driver", ".....AppData/Local/Google/Chrome/Application/chrome.exe"); 
WebDriver wcr = new ChromeDriver(); 
+0

ओपी विंडोज़ पर मैक ओएस एक्स पर नहीं है – Daishi

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