Почему метод Appium driver.manage (). Window (). GetSize () возвращает размер, отличный от пикселей экрана? - PullRequest
0 голосов
/ 17 февраля 2019

Реальное разрешение экрана для iPhone X и XS составляет 1125x2436.

Но когда я выполняю driver.manage().window().getSize(), я получаю в качестве ответа 375x812.Это ровно 1/3 реального размера экрана.

И здесь все становится сложнее.Нажатие на координаты X, Y через TouchAction работает по-разному для моих тестов на iPhone X на iOS 11.2 и на iPhone XS на iOS 12.1

Для первых нужны координаты реального размера экрана в пикселяхв некоторых сценариях.В других им нужно, чтобы я разделил реальные координаты на 3, чтобы получить сигнал в нужном мне месте.Я обнаружил это методом проб и ошибок.

Но на iPhone XS вам всегда нужно отправлять координаты, разделенные на 3.

В любом случае, я мог заставить свои тесты работать, но теперь ямне интересно, почему это происходит?

1 Ответ

0 голосов
/ 18 февраля 2019

Appium возвращает Окно просмотра размер.Для iPhone X это 375 x 812

Appium использует appium-xcuitest-драйвер для автоматизации iOS, и если вы проверите его код, вы узнаете точные значения :

const IPHONE_X_WIDTH = 375;
const IPHONE_X_HEIGHT = 812;

Эти изменения были введены в этом PR , в котором добавлена ​​поддержка Appium для iPhone X. В основном значения области просмотра используются Appium для проверки, является ли устройство X или другими моделями..

Документы для снимок экрана состояния конечной точки:

Takes a screenshot of the viewport in a native context (iOS, Android)

Поскольку на снимке экрана используется вызов /window/size, становится ясно, что Appium возвращает возвращаемый видовой экран, но это не так.ошибка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...