В мобильных приложениях пользователи обычно склонны использовать операции скольжения для взаимодействия с элементами управления в приложении из-за простоты, что делает скольжение ключевым действием, часто используемым в автоматизированном тестировании. Appium предоставляет несколько способов имитировать действие пользователя при скольжении экрана.
Сценарии скольжения в мобильных приложениях обычно включают в себя следующие типы:
Скользите из одной точки в другую в течение заданного времени, используя инерцию слайда. Необходимые параметры следующие:
Реализация Python
def test_swipe_views(self):
# Проведите пальцем от одной точки к другой для выбора продолжительности.
'''
start_x: начальные координаты x
start_y: начальные координаты y
end_x: конечные координаты x
end_y: конечные координаты y
duration: продолжительность
'''
# Нажмите, чтобы войти Views интерфейс
self.driver.find_element(AppiumBy.ACCESSIBILITY_ID, 'Views').click()
# Получить ширину и высоту окна
height = self.driver.get_window_size().get('height')
weight = self.driver.get_window_size().get('width')
# Проведите пальцем по экрану
self.driver.swipe(start_x=weight * 0.5,
start_y=height * 0.8,
end_x=weight * 0.5,
end_y=height * 0.2, duration=2000)
ele = self.driver.find_element(AppiumBy.ACCESSIBILITY_ID, 'Picker')
# Утвердить, что скольжение прошло успешно найти элемент
assert ele.text == 'Picker'
Скольжение от одного элемента к другому имеет инерцию скольжения. Необходимые параметры следующие:
Реализация Python
def test_scroll_ele(self):
'''
Скольжение от одного элемента к другому
:return:
'''
# Нажмите, чтобы войти Views интерфейс
self.driver.find_element(AppiumBy.ACCESSIBILITY_ID, 'Views').click()
# скользящий стартовый элемент
image_btn = self.driver.find_element(AppiumBy.ACCESSIBILITY_ID, 'ImageButton')
# раздвижной концевой элемент
button = self.driver.find_element(AppiumBy.ACCESSIBILITY_ID, 'Buttons')
# Проведите пальцем по экрану
self.driver.scroll(image_btn, button, duration=2000)
list_ele = self.driver.find_element(AppiumBy.ACCESSIBILITY_ID, 'Picker')
assert list_ele.text == 'Picker'