Проблема с элементами вне зоны видимости экрана

Есть приложение написанное на кардове. Есть следующая ситуация, когда мы загружаем страницу она приходит полностью, хотя вся не влезает в экран и все элементы считаются видимыми. Но при этом мы не можем работать с элементами, пробуем кликнуть, appium говорит, что кликнул успешно, но на экране ничего не изменилось. Для вставки значения в поле или клика по кнопке мы решили запоминать координаты нужно элемента и скроллим страницу до нужных координат и далее с элементом работаем. Но проблема встает, когда мы хотим работать со следующим элементом, мы уже страницу сдвинули, а координаты у элемента не пересчитываются и мы на сдвинутой странице не знаем до куда свайпать. Думали сделать возвращение назад к исходному положению, но оказалось что иногда тестируемое приложение для каких то событий перерассчитывается координаты, а как только мы скроллим назад, то мы опять сдвигаем страницу,а координаты опять не перерассчитываются. Кто-нибудь сталкивался с такой проблемой? Есть хорошее решение?

Вот интересная ссылка: Как проскролить до элемента в Appium – Test (automation) remarks

Попробуйте описать свою проблему в таком стиле:

New Appium issue

The problem

Briefly describe the issue you are experiencing (or the feature you want to see added to Appium). Tell us what you were trying to do and what happened instead. Remember, this is not a place to ask questions. For that, go to http://discuss.appium.io!

Environment

  • Appium version (or git revision) that exhibits the issue:
  • Last Appium version that did not exhibit the issue (if applicable):
  • Desktop OS/version used to run Appium:
  • Node.js version (unless using Appium.app|exe):
  • Mobile platform/version under test:
  • Real device or emulator/simulator:
  • Appium CLI or Appium.app|exe:

Details

Describe in more detail the problem you have been experiencing, if necessary.

Link to Appium logs

Create a gist which is a paste of your full Appium logs, and link them here. Do not paste your full Appium logs here, as it will make this issue very long and hard to read! If you are reporting a bug, always include Appium logs!

Code To Reproduce Issue [ Good To Have ]

Please remember that, with sample code; it’s easier to reproduce bug and much faster to fix it.

Please git clone GitHub - appium-boneyard/sample-code: appium sample code (dotnet, java, node, perl, php, python, ruby, etc.) and use one of your favourite languages and sample apps to reproduce issue.

In case a similar scenario is missing in sample-code, please submit a PR with one of the sample apps provided.

1 лайк