Fixed feature test cases.

This commit is contained in:
Yogesh Mahajan 2021-11-18 17:13:32 +05:30 committed by Akshay Joshi
parent cc91e5da94
commit 246bb01736
6 changed files with 50 additions and 35 deletions

View File

@ -88,7 +88,7 @@ class PGUtilitiesBackupFeatureTest(BaseFeatureTest):
NavMenuLocators.process_watcher_alertfier)) NavMenuLocators.process_watcher_alertfier))
self.page.wait_for_element_to_disappear( self.page.wait_for_element_to_disappear(
lambda driver: driver.find_element( lambda driver: driver.find_element(
By.CSS_SELECTOR, ".loading-logs"), 10) By.CSS_SELECTOR, ".loading-logs"), 18)
expected_backup_success_msg = "Successfully completed." expected_backup_success_msg = "Successfully completed."
self.assertEqual(status, expected_backup_success_msg) self.assertEqual(status, expected_backup_success_msg)
@ -157,18 +157,23 @@ class PGUtilitiesBackupFeatureTest(BaseFeatureTest):
os.remove(backup_file) os.remove(backup_file)
def after(self): def after(self):
test_gui_helper.close_process_watcher(self) try:
test_gui_helper.close_bgprocess_popup(self) test_gui_helper.close_process_watcher(self)
self.page.remove_server(self.server) test_gui_helper.close_bgprocess_popup(self)
connection = test_utils.get_db_connection( self.page.remove_server(self.server)
self.server['db'], except Exception as e:
self.server['username'], print("PGUtilitiesBackupFeatureTest - "
self.server['db_password'], "Exception occurred in after method")
self.server['host'], finally:
self.server['port'], connection = test_utils.get_db_connection(
self.server['sslmode'] self.server['db'],
) self.server['username'],
test_utils.drop_database(connection, self.database_name) self.server['db_password'],
self.server['host'],
self.server['port'],
self.server['sslmode']
)
test_utils.drop_database(connection, self.database_name)
def _check_detailed_window_for_xss(self, tool_name): def _check_detailed_window_for_xss(self, tool_name):
source_code = self.page.find_by_css_selector( source_code = self.page.find_by_css_selector(

View File

@ -165,19 +165,24 @@ class PGUtilitiesMaintenanceFeatureTest(BaseFeatureTest):
test_gui_helper.close_process_watcher(self) test_gui_helper.close_process_watcher(self)
def after(self): def after(self):
test_gui_helper.close_bgprocess_popup(self) try:
test_utils.delete_table(self.server, self.database_name, test_gui_helper.close_bgprocess_popup(self)
self.table_name) test_utils.delete_table(self.server, self.database_name,
self.page.remove_server(self.server) self.table_name)
connection = test_utils.get_db_connection( self.page.remove_server(self.server)
self.server['db'], except Exception as e:
self.server['username'], print("PGUtilitiesMaintenanceFeatureTest - "
self.server['db_password'], "Exception occurred in after method")
self.server['host'], finally:
self.server['port'], connection = test_utils.get_db_connection(
self.server['sslmode'] self.server['db'],
) self.server['username'],
test_utils.drop_database(connection, self.database_name) self.server['db_password'],
self.server['host'],
self.server['port'],
self.server['sslmode']
)
test_utils.drop_database(connection, self.database_name)
def check_escaped_characters(self, source_code, string_to_find, source): def check_escaped_characters(self, source_code, string_to_find, source):
# For XSS we need to search against element's html code # For XSS we need to search against element's html code

View File

@ -82,7 +82,7 @@ class CheckRoleMembershipControlFeatureTest(BaseFeatureTest):
# Fetch the source code for our custom control # Fetch the source code for our custom control
source_code = self.page.find_by_xpath( source_code = self.page.find_by_xpath(
"//span[contains(@class,'icon-')]/following-sibling::span" "//span[contains(@class,'icon-')]/following-sibling::span"
).text ).get_attribute('innerHTML')
self._check_escaped_characters( self._check_escaped_characters(
source_code, source_code,

View File

@ -431,7 +431,7 @@ class PgadminPage:
:param server_group_name: containing server :param server_group_name: containing server
:param server_name: :param server_name:
:param server_password: :param server_password:
:return: true if server node is expnaded else false :return: true if server node is expanded else false
""" """
server_expanded = False server_expanded = False
server_node_xpath = TreeAreaLocators.server_node(server_name) server_node_xpath = TreeAreaLocators.server_node(server_name)
@ -444,14 +444,14 @@ class PgadminPage:
self.driver.execute_script( self.driver.execute_script(
self.js_executor_scrollintoview_arg, server_node) self.js_executor_scrollintoview_arg, server_node)
if self.check_if_element_exist_by_xpath( if self.check_if_element_exist_by_xpath(
server_node_exp_status_xpath, 1): server_node_exp_status_xpath, 2):
server_expanded = True server_expanded = True
else: else:
server_expanded = self.click_expand_server_node( server_expanded = self.click_expand_server_node(
server_name, server_password, server_node) server_name, server_password, server_node)
if not server_expanded: if not server_expanded:
print("(expand_server_node)The Server node is not " print("(expand_server_node)The Server node is not "
"expnaded", file=sys.stderr) "expanded", file=sys.stderr)
else: else:
print("(expand_server_node)The Server node not found", print("(expand_server_node)The Server node not found",
file=sys.stderr) file=sys.stderr)
@ -478,7 +478,8 @@ class PgadminPage:
webdriver.ActionChains(self.driver).double_click( webdriver.ActionChains(self.driver).double_click(
server_node).perform() server_node).perform()
if self.check_if_element_exist_by_xpath( if self.check_if_element_exist_by_xpath(
TreeAreaLocators.server_node_exp_status(server_name)): TreeAreaLocators.server_node_exp_status(server_name),
10):
server_node_expansion_status = True server_node_expansion_status = True
else: else:
if self.click_and_connect_server(server_name, server_password): if self.click_and_connect_server(server_name, server_password):
@ -586,7 +587,7 @@ class PgadminPage:
server_child_expanded = self.click_to_expand_tree_node( server_child_expanded = self.click_to_expand_tree_node(
child_node_ele, server_child_node_exp_status_xpath) child_node_ele, server_child_node_exp_status_xpath)
if not server_child_expanded: if not server_child_expanded:
print("Child not is not expanded after clickng ", print("Child not is not expanded after clicking ",
file=sys.stderr) file=sys.stderr)
else: else:
print("The server/previous nodes not expanded", file=sys.stderr) print("The server/previous nodes not expanded", file=sys.stderr)
@ -1293,7 +1294,8 @@ class PgadminPage:
top_el).perform() top_el).perform()
r_scroll -= 1 r_scroll -= 1
else: else:
print("check_if_element_exists_with_scroll > Element NOT found") print("check_if_element_exists_with_scroll > Element NOT found",
xpath, file=sys.stderr)
return False return False
def find_by_xpath_list(self, xpath): def find_by_xpath_list(self, xpath):

View File

@ -1439,7 +1439,9 @@ def get_parallel_sequential_module_list(module_list):
""" """
# list of files consisting tests that needs to be # list of files consisting tests that needs to be
# executed sequentially # executed sequentially
sequential_tests_file = [] sequential_tests_file = [
'pgadmin.feature_tests.pg_utilities_backup_restore_test',
'pgadmin.feature_tests.pg_utilities_maintenance_test']
# list of tests can be executed in parallel # list of tests can be executed in parallel
parallel_tests = list(module_list) parallel_tests = list(module_list)

View File

@ -603,7 +603,8 @@ def run_parallel_tests(url_client, servers_details, parallel_tests_lists,
version_of_browser, version_of_browser,
ser['name']) ser['name'])
# Launch client url in browser # Launch client url in browser
test_utils.launch_url_in_browser(driver_object, url_client) test_utils.launch_url_in_browser(
driver_object, url_client, 60)
# Add name for thread # Add name for thread
thread_name = "parallel_tests" + ser['name'] thread_name = "parallel_tests" + ser['name']