У меня нет опыта работы с iOS, но я пытаюсь изменить свой проект Android, чтобы ребята из iOS могли использовать его и для iOS.
После поиска в Интернете я обнаружил, что это может произойти с использованием фабрики страниц и поиска элементов с помощью @iOSFindBy, После попытки использовать @iOSFindby для поиска элемента с помощью метода фабрики страниц компилятор указывает, что он устарел.
@iOSFindBy (Accessibility = "button_login")
@AndroidFindBy(id = "net.myApp.int:id/loginBtn")
private MobileElement login_Button2;
что я могу использовать вместо этого?
Я также видел в java-клиенте Appium (https://static.javadoc.io/io.appium/java-client/7.0.0/index.html?deprecated-list.html):
*io.appium.java_client.pagefactory Тип аннотации iOSFindBy Устарело. UIAutomation устаревает. Вместо этого используйте iOSXCUITFindBy Рекомендуется использовать XCUITest
@Retention(value=RUNTIME) @Target(value = {FIELD,TYPE}) @Repeatable(value=iOSFindBySet.class) public @interface iOSFindBy
Используется для обозначения поля в объекте страницы для указания альтернативного механизма поиска элемента или списка элементов. При использовании вместе с PageFactory это позволяет пользователям быстро и легко создавать объекты PageObject. используя селекторы пользовательского интерфейса iOS, доступность, идентификатор, имя, имя класса, тег и xpath*
но я не знаю, является ли это решением и как использовать Если я использую его в своем коде, также получаю ошибку:
@iOSXCUITFindBy Accessibility = "button_login"
@AndroidFindBy(id = "net.myApp.int:id/loginBtn")
private MobileElement login_Button1;
Аннотации здесь запрещены.
Заранее спасибо за любой совет
Лучший способ узнать, как все работает, — проверить связанные тесты в репозитории appium-java-клиент на гитхаб:
@iOSXCUITFindBy(accessibility = "IntegerB")
private MobileElement textField2;
Итак, в вашем случае это должно быть:
@iOSXCUITFindBy(accessibility = "button_login")
@AndroidFindBy(id = "net.myApp.int:id/loginBtn")
private MobileElement login_Button1;
Спасибо за подсказку и поддержку. У меня нет возможности проверить это, но, по крайней мере, нет ошибки компилятора, и я предполагаю, что это работает. Огромное спасибо