2012-07-18 12 views
37

का उपयोग कर वर्तमान पृष्ठ का यूआरएल प्राप्त करना मैं वर्तमान में खुले पृष्ठ का यूआरएल प्राप्त करने का प्रयास कर रहा हूं। मैं सेलेनियम वेबड्राइवर और जावा का उपयोग कर रहा हूं।सेलेनियम वेबड्राइवर

WebDriver driver = new WebDriver(); 
String url = driver.getCurrentUrl(); 

हालांकि, URL वास्तव में प्रतिबिंबित करने के लिए जहां मैं वर्तमान में हूँ प्रकट नहीं होता है:

मैं के माध्यम से वर्तमान URL तक पहुँचने कर रहा हूँ।

मेरा वर्तमान परीक्षण केस एनवाईटी वेबसाइट पर जा रहा है और फिर "प्रौद्योगिकी" लिंक पर क्लिक करना शामिल है। हालांकि, पता बार में प्रदर्शित यूआरएल के बावजूद, url हमेशा http://www.nytimes.com/ प्रतीत होता है।

कैसे मैं वास्तव में URL पता बार में है कि के मूल्य का उपयोग करते हैं तो मैं बता सकता है क्या मैं वास्तव में पेज पर हूँ?

+0

बस जिज्ञासु तुम क्यों सीधे प्रौद्योगिकी लिंक का उपयोग नहीं कर सकते? आप होम पेज पर क्यों जाना चाहते हैं और क्लिक करें? – Kishore

+0

मेरा प्रोग्राम लिंक का पालन करके पृष्ठ की खोज कर रहा है - लेकिन यह जानना उपयोगी होगा कि यह वास्तव में कहां रहा है ताकि यह एक ही लिंक पर बार-बार क्लिक न हो। – Karen

+0

'HtmlUnitDriver' का उपयोग करके, वास्तव में, यूआरएल नहीं बदलता है। अजीब। विंडोज एक्सपी एसपी 3 पर आईई 8 में, सबकुछ आसानी से चलता है, हालांकि। आपका ब्राउज़र क्या है (क्या आपने दूसरों को आजमाया?), ओएस और सेलेनियम संस्करण? –

उत्तर

18

नींद डालें। यह काम करेगा। मैं प्रयास कर चुका हूं। कारण यह है कि पृष्ठ अभी तक लोड नहीं हुआ था। चेक इस सवाल का पता करने के लिए लोड के लिए प्रतीक्षा करने के लिए कैसे - Wait for page load in Selenium