From 12679c06cb3374c77958d900ce8e44935d10e860 Mon Sep 17 00:00:00 2001 From: Nico Schedel <nschedel@sipwise.com> Date: Mon, 20 Jan 2020 12:56:00 +0100 Subject: [PATCH] TT#70901 selenium: improve waiting conditions in Collections.py functions - remove unnecessary find_element calls - now check for the column name instead of just the column existing Change-Id: Iaebbbcddc410f8ce50b5e0c76bd203e50a7717e0 --- t/selenium/functions/Collections.py | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/t/selenium/functions/Collections.py b/t/selenium/functions/Collections.py index dfd1f029..49f84dbe 100644 --- a/t/selenium/functions/Collections.py +++ b/t/selenium/functions/Collections.py @@ -82,7 +82,8 @@ def delete_customer(driver, name): Functions.fill_element( driver, '//*[@id="Customer_table_filter"]//input', name) WebDriverWait(driver, 10).until(EC.element_to_be_clickable(( - By.XPATH, '//*[@id="Customer_table"]//tr[1]'))) + By.XPATH, '//*[@id="Customer_table"]//tr[1]//td' + '[text()="%s"]' % name))) hoverclick = ActionChains(driver) hoverclick.move_to_element(driver.find_element_by_xpath( '//*[@id="Customer_table"]//tr[1]')) @@ -105,9 +106,9 @@ def create_subscriber(driver, customername, domainname): '#Customer_table tr > td.dataTables_empty') Functions.fill_element( driver, '//*[@id="Customer_table_filter"]//input', customername) - driver.find_element_by_xpath( - '//*[@id="Customer_table"]//tr[1]//td//a[contains' - '(text(), "Details")]') + WebDriverWait(driver, 10).until(EC.element_to_be_clickable(( + By.XPATH, '//*[@id="Customer_table"]//tr[1]//td' + '[text()="%s"]' % customername))) hoverclick = ActionChains(driver) hoverclick.move_to_element(driver.find_element_by_xpath( '//*[@id="Customer_table"]//tr[1]')) @@ -155,11 +156,8 @@ def delete_subscriber(driver, customername): Functions.fill_element( driver, '//*[@id="Customer_table_filter"]//input', customername) WebDriverWait(driver, 10).until(EC.element_to_be_clickable(( - By.XPATH, '//*[@id="Customer_table"]//tr[1]//td//a[contains' - '(text(), "Details")]'))) - driver.find_element_by_xpath( - '//*[@id="Customer_table"]//tr[1]//td//a[contains' - '(text(), "Details")]') + By.XPATH, '//*[@id="Customer_table"]//tr[1]//td' + '[text()="%s"]' % customername))) hoverclick = ActionChains(driver) hoverclick.move_to_element(driver.find_element_by_xpath( '//*[@id="Customer_table"]//tr[1]')) @@ -170,7 +168,6 @@ def delete_subscriber(driver, customername): hoverclick.perform() driver.find_element_by_link_text('Expand Groups').click() Functions.scroll_to_element(driver, 'Subscribers') - WebDriverWait(driver, 1) hoverclick = ActionChains(driver) hoverclick.move_to_element(driver.find_element_by_xpath( '//*[@id="subscribers_table"]//tr[1]')) @@ -210,9 +207,7 @@ def delete_domain(driver, name): Functions.fill_element( driver, '//*[@id="Domain_table_filter"]//input', name) WebDriverWait(driver, 10).until(EC.element_to_be_clickable(( - By.XPATH, '//*[@id="Domain_table"]//tr[1]'))) - driver.find_element_by_xpath( - '//*[@id="Domain_table"]//tr[1]//td//a[contains(text(), "Delete")]') + By.XPATH, '//*[@id="Domain_table"]//tr[1]//td[text()="%s"]' % name))) hoverclick = ActionChains(driver) hoverclick.move_to_element(driver.find_element_by_xpath( '//*[@id="Domain_table"]//tr[1]'))