@@ -108,6 +108,8 @@ class TestLayerDetailsPage(SeleniumTestCase):
save_btn.click()
self.wait_until_visible("#save-changes-for-switch")
+ # Ensure scrolled into view
+ self.driver.execute_script('window.scrollTo({behavior: "instant", top: 0, left: 0})')
btn_save_chg_for_switch = self.wait_until_clickable(
"#save-changes-for-switch")
btn_save_chg_for_switch.click()
@@ -685,17 +685,17 @@ class TestProjectPage(TestProjectPageBase):
'active', str(self.find('#information').get_attribute('class'))
)
# Check second tab (recipes)
- # Ensure page is scrolled to the top
- self.driver.find_element(By.XPATH, '//body').send_keys(Keys.CONTROL + Keys.HOME)
self.wait_until_visible('.nav-tabs')
+ # Ensure page is scrolled to the top
+ self.driver.execute_script('window.scrollTo({behavior: "instant", top: 0, left: 0})')
tabs[1].click()
self.assertIn(
'active', str(self.find('#recipes').get_attribute('class'))
)
# Check third tab (machines)
- # Ensure page is scrolled to the top
- self.driver.find_element(By.XPATH, '//body').send_keys(Keys.CONTROL + Keys.HOME)
self.wait_until_visible('.nav-tabs')
+ # Ensure page is scrolled to the top
+ self.driver.execute_script('window.scrollTo({behavior: "instant", top: 0, left: 0})')
tabs[2].click()
self.assertIn(
'active', str(self.find('#machines').get_attribute('class'))
The display window scrolling mechanism we were using was failing in one case and needed in another. After trying various approaches, this one with window.scrollTo seems to work and fixes the test failures. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> --- lib/toaster/tests/browser/test_layerdetails_page.py | 2 ++ lib/toaster/tests/functional/test_project_page.py | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-)