सेलेनियम के मुताबिक, एक निश्चित प्रतीक्षा डीओएम को एक निश्चित समय के लिए चुनाव करती है कि कोई तत्व दिखाई देता है या नहीं। मेरी समझ यह है कि यह एक निर्दिष्ट समय तक मतदान करेगा, लेकिन यदि कोई तत्व पहले दिखाई देता है, तो यह आगे इंतजार किए बिना जारी रहेगा।सेलेनियम निहित प्रतीक्षा बनाम थ्रेड.sleep()
http://seleniumhq.org/docs/04_webdriver_advanced.html
मैं एक विधि है कि के बारे में 13 सेकंड में चलाता है। जब मैं 100 सेकंड तक अंतर्निहित प्रतीक्षा सेट करता हूं, तो इसमें 213 सेकंड लगते हैं।
driver.manage().timeouts().implicitlyWait(100, TimeUnit.SECONDS);
ऐसा प्रतीत होता है कि इस विधि के दौरान, मैं 2 बार (100 सेकंड प्रत्येक) प्रतीक्षा कर रहा हूं। अंतर्निहित प्रतीक्षा 0 या 100 पर सेट करना मेरी विधि को प्रभावित नहीं करता है। दोनों मामलों में, वे सही ढंग से खत्म करते हैं।
मेरा प्रश्न यह है। मैंने सोचा कि निहित प्रतीक्षा एक तत्व के लिए दिखाने के लिए सबसे कम समय के लिए इंतजार कर रहा है। क्या यह सही है? या मुझ से कुछ गलत हो रहा है?
इसके अलावा, यह 2 बार क्यों इंतजार कर रहा है, जब इसे स्पष्ट रूप से प्रतीक्षा करने की आवश्यकता नहीं है? (मेरे विधि सही ढंग से खत्म भले ही मैं 0 करने के लिए इंतजार सेट)
[सेलेनियम वेबड्राइवर - स्पष्ट प्रतीक्षा बनाम निहित प्रतीक्षा] के संभावित डुप्लिकेट (http://stackoverflow.com/questions/10404160/selenium-webdriver-explicit-wait-vs-implicit-wait) – lesmana