From 447b6c7244ab2f393d4409298f0d817855cf9d2e Mon Sep 17 00:00:00 2001 From: Jan Jasek Date: Mon, 24 Oct 2022 10:34:19 +0200 Subject: Fix instance error with attribute cells. Selenium read data faster than the data are loaded. Added wait until element is visible. Change-Id: I2975ea5836a898d113a2baaab6a8f9bf8af8d742 (cherry picked from commit b14958df8bbf93c5c8623b6e367dfba607d795d1) --- .../integration_tests/pages/project/compute/instancespage.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/openstack_dashboard/test/integration_tests/pages/project/compute/instancespage.py b/openstack_dashboard/test/integration_tests/pages/project/compute/instancespage.py index 2293abec1..236d9465d 100644 --- a/openstack_dashboard/test/integration_tests/pages/project/compute/instancespage.py +++ b/openstack_dashboard/test/integration_tests/pages/project/compute/instancespage.py @@ -10,6 +10,7 @@ # License for the specific language governing permissions and limitations # under the License. import netaddr +from selenium.common import exceptions from selenium.webdriver.common import by from openstack_dashboard.test.integration_tests.pages import basepage @@ -64,6 +65,11 @@ class InstancesPage(basepage.BaseNavigationPage): FLAVOR_STEP_INDEX = 2 NETWORKS_STEP_INDEX = 3 + _search_state_active = ( + by.By.XPATH, + "//*[contains(@class,'normal_column')][contains(text(),'Active')]" + ) + def __init__(self, driver, conf): super().__init__(driver, conf) self._page_title = "Instances" @@ -155,6 +161,10 @@ class InstancesPage(basepage.BaseNavigationPage): row = self._get_row_with_instance_name(name) return row and row.cells[self.INSTANCES_TABLE_STATUS_COLUMN] + try: + self.wait_until_element_is_visible(self._search_state_active) + except exceptions.TimeoutException: + return False status = self.instances_table.wait_cell_status(cell_getter, ('Active', 'Error')) return status == 'Active' -- cgit v1.2.1