
Тестирование мобильных приложений *
Методы, советы, опыт
Обходим ограничения в Calabash-Android с UIAutomator

Appium и Calabash — одни из самых популярных фреймворков для автоматизации тестирования Android-приложений. У каждого, конечно, есть свои преимущества и недостатки. Их основные ограничения:
Calabash: может управлять только пользовательским интерфейсом, который является частью тестового приложения, в частности, нет поддержки тестирования уведомлений;
- Appium: не может вызывать backdoor-методы в приложениях наподобие Calabash (эти методы очень полезны для настройки состояния тестируемого приложения).
Мы в Badoo пользовались Calabash для автоматизации тестирования, когда Appium только начинал развиваться. Это очень стабильный инструмент, и он до сих пор работает быстрее Appium, так что мы не собираемся мигрировать. Но чтобы автоматизировать такое многофункциональное приложение, как Badoo, нам пришлось обойти ограничение Calabash на работу только с интерфейсом тестового приложения.
Когда-то мы пришли к такому решению. И хотя оно ещё работает, его надёжность снижается из-за множества вариаций устройств с разной диагональю, разными версиями Android и так далее.
В этой статье я расскажу, как мы решили возникшую проблему с помощью добавления в Calabash поддержки UIAutomator2. Если вы слишком нетерпеливы, то скажу по секрету, что в конце есть ссылка на готовый к использованию Ruby Gem.
Погружение в Robolectric
В мире Android-разработки всё чаще используют unit-тестирование. Проверка корректности работы отдельных модулей приложения помогает выявить и устранить ошибки в коде уже на ранних этапах. Вкупе с автоматизацией сборки, компонентными и интеграционными тестами, unit-тесты позволяют делать качественный продукт, независимо от размера вашей команды разработчиков.
Под катом расскажу о внутреннем устройстве фреймворка для unit-тестирования Android-приложений — Robolectric.

Vysor — удобный инструмент для тестирования

Привет, Хабр! В этой статье я хочу рассказать об удобном инструменте для работы QA-инженера. Это Vysor — расширение, доступное в интернет-магазине Google, которое позволяет делать скриншоты и записывает видео с мобильных устройств.
Видеозаписи докладов конференции мобильных разработчиков MBLTdev 16
- доклады по iOS- и Android-разработке,
- воркшоп по Firebase от Google,
- трек по UX/UI от преподавателей Британской высшей школы дизайна.

Лучшие доклады Mobius 2016: Рейтинг и видеозаписи

Сегодня мы обратимся к Mobius, конференции по мобильной разработке (Android и iOS, в основном), и это прекрасно: в ТОП вошло 5 докладов по Android-разработке и 3 – по iOS. Под катом вы найдете доклады о возможностях языков (Swift, Kotlin), о тестировании, актуальных фреймворках и подходах, и даже о разработке под Cardboard.
Говоря «топ», мы имеем в виду не наши любимые доклады или выбор каких-то «экспертов» — лучшие отобраны на основе взвешенной оценки от 80% участников конференции. Поэтому
даже если вы смотрели ранее выложенные видеозаписи, посмотрите рейтинг. Вдруг вы пропустили доклады, наиболее высоко оцененные нашими участниками?
7 сервисов для поиска уязвимости мобильных приложений

Проверьте, есть ли в системе безопасности вашего мобильного приложения слабые места, и исправьте их, пока они не навредили вашей репутации.
Согласно последним исследованиям NowSecure более чем в 25% мобильных приложений есть хотя бы одна критически опасная уязвимость.
В 59% финансовых приложений для Android есть три уязвимости из списка OWASP Топ-10.
Чем больше используют мобильные телефоны, тем больше появляется мобильных приложений. В магазине приложений Apple App Store доступно более 2 миллионов приложений, а в Google Play Store — более 2,2 миллионов.
Мобильный опыт Яндекса в трех видеокурсах: дизайн, разработка, интерфейсы
В прошлом году Яндекс провел образовательный экспериментальный проект, который получил название «Мобилизация». Наша цель была в том, чтобы участники поработали в настоящей команде и создали настоящий продукт — причём продукт мобильный. «Мобилизация» объединила Школу мобильной разработки, Школу менеджеров, Школу мобильного дизайна и Школу разработки интерфейсов.
Мы пригласили 126 студентов из 25 городов; 91 участник успешно завершил программу. Первый этап состоял из лекций, второй — из той самой командной работы. Обычно студента окружают люди той же специализации, что и он сам: менеджеры учатся вместе с менеджерами, дизайнеры — с дизайнерами и т. д. Но в реальности вам нужно хотя бы по одному представителю нескольких профессий. В каждую команду вошли студенты разных школ: дизайнер, менеджер и один-два разработчика.
Лекции студентам читали сотрудники Яндекса, которые каждый день сталкиваются с реальными задачами и делают приложения для миллионов пользователей. Специально для читателей Хабра мы собрали полную программу курса по мотивам лекций «Мобилизации».
[Перевод] Как правильно определить размер команды для beta-тестирования мобильного приложения

При запуске нового приложения, каждый сталкивается с финальным этапом, когда вы вроде бы собрали в одно целое все, что только можно, перед запуском «следующей большой вещи» на рынок. И после 2- и 3-кратной проверки уже начинает казаться, что продут готов и можно загружать приложение в магазин.
Автоматизация тестирования по методологии Scrum
Гейзенбаг: Версия 1.0

Может ли самый первый релиз продукта быть достаточно хорошо оттестированным, или кучу шишек неизбежно набьёшь уже в продакшене? Конференция по тестированию «Гейзенбаг», которую мы недавно провели в Москве, состоялась в самый первый раз, так что можно было на её наглядном примере и посмотреть. Как она прошла? Возникли ли проблемы? И как вообще должна выглядеть конференция по тестированию, если внутри него существуют подвиды с совершенно разной спецификой, а дело с ним имеют специалисты разного профиля?
Тестирование UWP приложений с помощью Appium

На данный момент UWP приложения используют в качестве решения для тестирования через интерфейс Coded UI. Но если у вас приложение под несколько платформ, то в этом случае вам придется писать тесты под каждую платформу отдельно.
В 2016-ом году была анонсирована возможность тестирования UWP приложений с помощью Appium. Для этого был создан драйвер под названием Windows Application Driver (WinAppDriver).
Что общего у мобильного QA и осьминога

Привет! Я Катя, и я –
Итак, раннее утро, вы – мобильный QA. Вы приходите на работу, завариваете крепкий кофе и хотите взять пару мобильных устройств для тестирования новой фичи, осознавая, какие муки выбора вам предстоят. Что это будут за устройства?
Рано или поздно каждый мобильный тестировщик задаётся вопросом, на каком количестве устройств тестировать новый функционал, чтобы поймать максимальное количество девайсозависимых багов, потратив минимум времени. Автотесты ещё не написаны, перед вами абсолютно новые фичи. И если с iOS есть хоть какая-то ясность, и список устройств ограничен, то Android «расплодился» в полнейший ад. Вы удивитесь, но для счастья нужно всего три–четыре Android-устройства. Я хочу рассказать, как с точки зрения опытного тестировщика их выбрать.
Ближайшие события
Покрываем проект smoke-тестами, пока он не сгорел

Привет, Хабр! Как-то раз на нашем внутреннем семинаре мой руководитель – глава отдела тестирования – начал свою речь со слов «тестирование не нужно». В зале все притихли, некоторые даже пытались упасть со стульев. Он продолжил свою мысль: без тестирования вполне возможно создать сложный и дорогостоящий проект. И, скорее всего, он будет работать. Но представьте, насколько увереннее вы будете себя ощущать, зная, что продукт работает как надо.
В Badoo релизы происходят довольно часто. Например, серверная часть наравне с desktop web релизится дважды в день. Так что мы не понаслышке знаем, что сложное и медленное тестирование – камень преткновения разработки. Быстрое же тестирование – это счастье. Итак, сегодня я расскажу о том, как в компании Badoo устроено smoke-тестирование.
RamQA #06 — 29 ноября в 19:00

29 ноября в 19:00 мы проведем очередной meetup, посвящённый тестированию ПО.
На этот раз у нас в гостях выступят:
Worldwide-биллинг Badoo глазами QA

Привет, Хабр! Вот уже больше четырех лет я занимаюсь ручным и автоматизированным тестированием биллинговых систем Badoo. А биллинг Badoo — один из самых развитых (и сложных) в мире, и тестировать его — чаще всего интересная и неординарная задача. Сегодня я хочу вам рассказать, почему эти системы такие интересные и могучие, чему я научился за все эти годы и почему тестировать биллинг — это не (очень) страшно. И заодно поделюсь с вами очередной партией интересных историй (да, я это дело очень люблю). Большинство вещей будет применимо не только к нашему конкретному случаю, но и к любой другой сложной платежной системе (и не только платежной, если честно).
Что же такое наш биллинг? Это система обработки платежей в социальной сети, в которой более 330 миллионов зарегистрированных пользователей. Мы принимаем платежи во всех странах мира, поддерживаем свыше тридцати активных платежных методов (а за все время их было имплементировано около ста) и обрабатываем порядка 1500 запросов в секунду. Биллинг Badoo является самостоятельным выделенным сервисом, работающим с десятком разных клиентов (разные платформы, разные приложения). Достаточно любопытная база для развития тестирования, не так ли?
Тестирование мобильных приложений: интервью с Dan Cuellar (Appium)

В преддверии конференции Heisenbug на наши вопросы касаемо мобильного тестирования согласился ответить Дэн Куэллар – создатель опенсорсного фреймворка Appium. До этого Дэн возглавлял отдел тестирования Shazam (Лондон) и Zoosk (Сан-Франциско), ранее – занимался разработкой Microsoft Outlook для Mac и других продуктов из офисной линейки.
Дэн – сторонник опенсорсных решений и тестирования программного обеспечения. Бакалавр компьютерных наук (Школа Компьютерных Наук Университета Карнеги-Меллона, Питтсбург).
– Если мы говорим о мобильном тестировании, то могли бы вы поподробнее рассказать, почему решили выбрать именно эту сферу? Вы начали работать в мобайле ещё в Майкрософт?
– В Майкрософт я работал над пакетом Офиса для iPad, правда, уже в конце своей карьеры там. В то время мы использовали другой фреймворк для автоматизации тестирования. Я создал Appium, когда начал работать в Zoosk – это дейтинговый сайт в США. У нас было очень популярное мобильное приложение, но не было ничего для автоматизации тестирования, поэтому я изучил то, что было на рынке на тот момент, и пришёл к выводу, что ни один фреймворк не может удовлетворить мои потребности. Что делать в таких ситуациях? Сделать свой собственный.О программировании на мобильных устройствах
– Если рассмотреть развитие программирования на мобильных устройствах, то какие стадии вы могли бы выделить? Ну, что было в самом начале, что стало следующим шагом в развитии, считаете ли вы, что он уже состоялся, или есть еще куда расти?
Аtomic-тесты и файнтюнинг производительности
Любой программный продукт сложнее «Hello, world!» необходимо тестировать — это аксиома разработки. И чем шире его функциональность и сложнее архитектура, тем больше внимания нужно уделять тестированию. Особенно аккуратно надо относиться к гранулярному измерению производительности. Часто бывает, что в одной части ускорили, а в другой замедлили, в итоге результат нулевой. Чтобы такого не происходило, мы в своей работе очень активно используем так называемые atomic-тесты. Что это такое и с чем их едят, читайте под катом.Как я сходил на первый в России «Testathon», хакатон для тестировщиков

Добрый день, Хабр! 8 октября 2016 года в Москве (а 9 октября в Санкт-Петербурге) проходило весьма любопытное событие под названием «Testathon». Организаторы рекламировали его как «первый в России международный хакатон для тестировщиков». Несмотря на изначально настороженное отношение (до этого я был только на одном real-life хакатоне по геймдеву, и было это достаточно плохо), я все-таки решился посетить московский этап «Тестатона». В итоге поучаствовал во всех этапах соревнований (и даже кое-что выиграл) и я хочу сказать, что оно того действительно стоило.
Сегодня я подробно расскажу о том, как здорово все это было (соблюдая все подписанные NDA, конечно), чтобы в случае возвращения этих замечательных ребят в Россию больше людей смогли победить свой здравый скептицизм. Если вы принципиально не участвуете в хакатонах (то есть ваш девиз по жизни «поспешишь — людей насмешишь»), то можете просто оценить историю об одном необычном и крайне запоминающемся дне моей жизни.
Видео докладов с Techleads Meetup #1

15-го октября в Badoo прошел пилотный Techleads Meetup. А сегодня мы выкладываем видео выступлений.
Познавательного Вам просмотра!
