2012-09-23 23 views
21

का उपयोग कर ब्राउज़र संस्करण प्राप्त करें मुझे ब्राउज़र संस्करण का उपयोग कैसे किया जा सकता है?सेलेनियम वेबड्राइवर

>>> from selenium import webdriver 
>>> driver = webdriver.Firefox() 
>>> print version <-- how to do this? 
    Firefox 12.0 
+0

फ़ायरफ़ॉक्स संस्करण 48 से आगे और आगे आप जवाब देख सकते हैं [यहां] (https://stackoverflow.com/questions/23887911/how-to-check-firefox-version-when-running-selenium-tests-in- जेनकींस/47816337 # 47816337) – ArgiesDario

उत्तर

20

capabilities संपत्ति एक शब्दकोश ब्राउज़र के बारे में जानकारी युक्त है, इसलिए इस काम करना चाहिए:

print driver.capabilities['version'] 
37

इस उत्तर मुझे सही रास्ते का नेतृत्व नीचे लेकिन अजगर लिए विशिष्ट है और विषय अधिक है व्यापक। तो, मैं जावा के लिए एक जवाब जोड़ रहा हूं जो थोड़ा और मुश्किल था। इस समय मैं सेलेनियम 2.25.0 का उपयोग कर रहा हूँ।

//make sure have correct import statements - I had to add these 
import org.openqa.selenium.Capabilities; 
import org.openqa.selenium.remote.RemoteWebDriver; 

WebDriver driver = new FirefoxDriver(); 

Capabilities caps = ((RemoteWebDriver) driver).getCapabilities(); 
String browserName = caps.getBrowserName(); 
String browserVersion = caps.getVersion(); 
System.out.println(browserName+" "+browserVersion); 
2

अपने अपने WebDriver लपेटकर इतना है कि यह EventFiring है आप करेंगे एक कस्टम EventFiringWebDriver कार्यान्वयन करने के लिए है।

import org.openqa.selenium.Capabilities; 
import org.openqa.selenium.HasCapabilities; 
import org.openqa.selenium.remote.RemoteWebDriver; 
import org.openqa.selenium.support.events.EventFiringWebDriver; 

public class MyEventFiringWebDriver extends EventFiringWebDriver implements HasCapabilities { 

    private RemoteWebDriver driver; 

    public MyEventFiringWebDriver(RemoteWebDriver driver) { 
     super(driver); 
     this.driver = driver; 
    } 

    @Override 
    public Capabilities getCapabilities() { 
     return driver.getCapabilities(); 
    } 

} 

बस पोस्ट करना क्योंकि यह एक समस्या थी जिसे मैंने पार किया।

2

हालांकि यह ऊपर दिए गए प्रश्न का काफी जवाब नहीं दे सकता है, यह अभी भी किसी ऐसे व्यक्ति के लिए उपयोगी हो सकता है, जो विभिन्न ब्राउज़रों (यानी फ़ायरफ़ॉक्स बनाम क्रोम) से प्राप्त विभिन्न व्यवहारों के आधार पर परीक्षण कोड करने का तरीका ढूंढ रहा हो। मैं उस समय की तलाश में था जब मैंने इस धागे पर ठोकर खाई, तो मैंने सोचा कि अगर मैं किसी और की मदद कर सकता हूं तो मैं इसे जोड़ दूंगा।

अजगर पर, अगर आप बस ब्राउज़र की तलाश कर रहे आप पर (यानी फ़ायरफ़ॉक्स, क्रोम, यानी, आदि ..) तो आप इस्तेमाल कर सकते हैं

driver.name 

परीक्षण कर रहे हैं, ... .. में कथन। यह मानता है कि आपने पहले से ही ड्राइवर को उस वेब ब्राउज़र पर असाइन किया है जिस पर आप परीक्षण कर रहे हैं (यानी फ़ायरफ़ॉक्स, क्रोम, आईई, आदि ..)। हालांकि, यदि आपको एक ही ब्राउज़र के कई संस्करणों का परीक्षण करने का कार्य सौंपा गया है, तो आपको ड्राइवर.वर्जन पर कुछ और चाहिए। उम्मीद है कि यह किसी की मदद करता है। जब मैं इस धागे को मिला तो मैं इस समाधान की तलाश में था, इसलिए मैंने सोचा कि अगर मैं किसी और को इसकी ज़रूरत है तो मैं इसे जोड़ दूंगा।

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