@@ -2356,6 +2356,12 @@ def __select_option(
2356
2356
element = self.wait_for_element_present(
2357
2357
dropdown_selector, by=dropdown_by, timeout=timeout
2358
2358
)
2359
+ try:
2360
+ element = self.wait_for_element_clickable(
2361
+ dropdown_selector, by=dropdown_by, timeout=1.2
2362
+ )
2363
+ except Exception:
2364
+ self.wait_for_ready_state_complete()
2359
2365
if self.is_element_visible(dropdown_selector, by=dropdown_by):
2360
2366
self.__demo_mode_highlight_if_active(
2361
2367
dropdown_selector, dropdown_by
@@ -2369,18 +2375,28 @@ def __select_option(
2369
2375
Select(element).select_by_value(option)
2370
2376
else:
2371
2377
Select(element).select_by_visible_text(option)
2372
- except (StaleElementReferenceException, ENI_Exception):
2378
+ time.sleep(0.05)
2379
+ self.wait_for_ready_state_complete()
2380
+ except Exception:
2381
+ time.sleep(0.25)
2373
2382
self.wait_for_ready_state_complete()
2374
- time.sleep(0.14)
2375
2383
element = self.wait_for_element_present(
2376
2384
dropdown_selector, by=dropdown_by, timeout=timeout
2377
2385
)
2386
+ try:
2387
+ element = self.wait_for_element_clickable(
2388
+ dropdown_selector, by=dropdown_by, timeout=1.2
2389
+ )
2390
+ except Exception:
2391
+ self.wait_for_ready_state_complete()
2378
2392
if option_by == "index":
2379
2393
Select(element).select_by_index(option)
2380
2394
elif option_by == "value":
2381
2395
Select(element).select_by_value(option)
2382
2396
else:
2383
2397
Select(element).select_by_visible_text(option)
2398
+ time.sleep(0.05)
2399
+ self.wait_for_ready_state_complete()
2384
2400
latest_window_count = len(self.driver.window_handles)
2385
2401
if (
2386
2402
latest_window_count > pre_window_count
0 commit comments