Как повторно использовать определения шагов и объекты страниц в автоматизации тестирования приложений Reactnative? - PullRequest
0 голосов
/ 10 января 2019

Я создал фреймворк Java-Cucumber, который использует Cucumber-JVM, appium, java, maven для запуска сценариев автоматизации в приложении, управляемом ReactNative. Итак, используя ReactNative, у нас есть приложения для Android и iOS.

Фреймворк основан на концепции Selenium Multibrowser, в которой когда-то созданный драйвер (для браузера) может использовать существующие объекты страницы.

Проблема 1: в случае Mobile, хотя методы Page Object одинаковы, но локаторы для IOS и Android разные. [Я не использовал Фабрику страниц (аннотации @Findby). Итак, я хотел бы знать, как можно использовать методы объекта страницы, написанные для iOS, для Android? Проблема 2: Я использовал Pico-Container для заполнения объектов Page в Step-defs. Мир создан в BaseClass, который является родительским классом для Android и iOS Stepdefs. Но если я вызову, pagemager страницы в шаге Android определит, тогда получит исключение NullPointer.

Проблема 3: Использование Cucumber, как повторно использовать реализацию step-defs для iOS для Android?

Мы используем шаблон Singleton для реализации драйвера Appium.

1 Ответ

0 голосов
/ 10 января 2019

Вам следует взглянуть на QAF , который предназначен для поддержки автоматизации функциональных тестов веб, мобильных устройств и веб-сервисов с различными способами создания тестов, включая BDD .

С хранилищем локаторов концепция с управлением ресурсами вы можете использовать тот же код / ​​страницу.

Более того, вы можете повторно использовать пошаговую реализацию в рамках проекта для другой платформы или для разных проектов (общие многократно используемые шаги, упакованные в jar и добавленные jar в проекте). Если из-за различий в функциональности у шага разная реализация для разных платформ, вы можете управлять им, имея шаг реализации в другом пакете. В таком случае вы можете настроить пакет поставщика шага во время выполнения.

Короче говоря, вы можете достичь наивысшего уровня повторного использования, используя различные концепции, предоставляемые платформой.

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