Comments 8
Используя Genymotion, можно гонять тесты в несколько потоков на одной машине, что позволяет заметно увеличить скорость прохождения тестов.
Поясните плз. Если речь идет о нескольких инстансах Genymotion, то со стандартными эмуляторами тоже можно так делать.
В чем вообще видите профит Appium? Кроме того, что нужно разбираться с одним тулом вместо нескольких. По факту пошарить сами тесты между платформами никогда не получается, работает Appium оооочень медленно. Есть более нормальные решения в виде Espresso для Android и KIF для iOS.
Преимущества в тестировании black box, у нас это был основной критерий при выборе инструмента. Также, работа через wd протокол позволяет писать тесты на любом языке.
Espresso и XCUITest мы используем для более низкоуровневых тестов, а-ля такие функциональные юниты.
Преимущества в тестировании black box, у нас это был основной критерий при выборе инструмента.
Что вам дает black box? Этого можно добиться путем code review и с instrumentation api (Espresso/etc).
Также, работа через wd протокол позволяет писать тесты на любом языке.
И вы пишете на …?
Cкорость выполнения тестов с Appium критически низкая, как вы с этим боритесь?
Что вам дает black box?
Того, что мы не видим и не лезем в код приложений. Вопрос тут скорее политический, но для компании важный.
И вы пишете на …?
В основном PHP. Один тестовый проект с одной инфраструктурой под все платформы (api, веб, ios, android) с минимальными изменениями.
Да не сказал бы, что прям критически низкая, у нас сетевые задержки иногда больше. На ios используем instruments-without-delay, чтобы убрать секундную задержку, воткнутую Эпплом.
Того, что мы не видим и не лезем в код приложений. Вопрос тут скорее политический, но для компании важный.
То есть вы код тестов держите в отдельном от приложения репозитории? А как тогда синхронизируете? Это же боль…
В основном PHP
ооооок, снимаю шляпу!
у нас сетевые задержки иногда больше
Это для отдельной дискуссии, TL;TR: не надо лезть на реальный бекенд в тестах :)
То есть вы код тестов держите в отдельном от приложения репозитории? А как тогда синхронизируете? Это же боль…
Именно. Иногда боль, да, но мы держимся
ооооок, снимаю шляпу!
Ну так исторически сложилось, да
Это для отдельной дискуссии, TL;TR: не надо лезть на реальный бекенд в тестах :)
Вряд ли буду согласен на 100%. Все-таки хочется тестировать реальное приложение с api, а не моки. Мокаем только самое необходимое.
Спасибо за статью, очень хорошо структурирована информация, с интересом прочитал.
Есть небольшой комментарий по поводу оформления. В качестве маркера в списках использован «», U+F0A7, зарезервированный под Private Use. В Хроме он выглядит как аккуратный квадратик, а в FF – как квадратик с символами «F0A7» внутри. Оба варианта означают «какой-то символ Юникода, отображение которого неизвестно». Если вы имели в виду именно квадрат, можно использовать □ U+25A1.
Автоматизация мобильных приложений на базе Appium