2012-05-23 26 views
5

सेलेनियम का उपयोग कर रहा सेलेनियम webdriver (php-webdriver-बाइंडिंग Yii विस्तार) का उपयोग कर रहा है और मैं ब्राउज़र sessionId (एक है कि परीक्षण का उपयोग किया जाएगा) प्राप्त करने के लिए कोशिश कर रहा हूँ ब्राउज़र sessionId मिलता है। मैंने सोचा कि मैं इसे वेबड्राइवर के माध्यम से प्राप्त कर सकता हूं, लेकिन ऐसा लगता है कि यह मामला नहीं है। वेबड्राइवर का सत्र ID है, लेकिन यह वह नहीं है जो परीक्षण ब्राउज़र उपयोग कर रहा है।कैसे webdriver

मैं अपने परीक्षण एक प्रमाणीकृत उपयोगकर्ता जो उन्हें पृष्ठों मैं परीक्षण कर रहा हूँ का उपयोग करने की अनुमति देगा होने के लिए अनुमति देने के लिए चल रहा है परीक्षण करने से पहले प्रवेश करने की कोशिश कर रहा हूँ।

मैं कुछ दिनों से शोध और परीक्षण कर रहा हूं और मुझे नुकसान हुआ है। किसी भी तरह की सहायता का स्वागत किया जाएगा।

धन्यवाद।

+0

वर्ग RemoteWebDriver एक getSessionId() विधि है, लेकिन मुझे यकीन है कि नहीं है अपने लिए क्या देख रहा हूँ। मैं एक शुद्ध वेबड्राइवर प्रोजेक्ट करने की कोशिश कर रहा था और यह भी ध्यान दिया कि वेबड्राइवर के पास यह विधि नहीं थी। मुझे यकीन है कि क्या इस के लिए "WebDriver विधि" है नहीं कर रहा हूँ ... – djangofan

+0

मैं क्या आप अपने प्रश्न के आधार पर की जरूरत के रूप में 100% स्पष्ट नहीं कर रहा हूँ, लेकिन विधि .hashCode() Webdriver की अनूठी hashCode पता चलता है, और यह मेरी जरूरतों के अनुरूप है। – gorbysbm

उत्तर

0

मैं जावा, में लेकिन स्रोत कोड के करीब परीक्षा पर इस समस्या थी, देखा कि चालक मैं उपयोग कर रहा था एक WebDriver वस्तु के रूप में instantiated किया गया था। इसे RemoteWebDriver ऑब्जेक्ट में बदलने के बाद, .getSessionId() विधि का खुलासा किया गया था, और driver.getSessionId() सत्र आईडी को अपेक्षित रूप से लौटा दिया।

मुझे यकीन नहीं है कि यह PHP में कैसे अनुवाद करेगा, लेकिन मैं वापस जाने की सलाह दूंगा और यह सुनिश्चित करने के लिए जांच करूँगा कि आपका ड्राइवर ऑब्जेक्ट WebDriver ऑब्जेक्ट की बजाय ऑब्जेक्ट है।

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