Обновить
256K+

Тестирование мобильных приложений *

Методы, советы, опыт

61,88
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Charles: незаменимый тул в арсенале QA-инженера

Время на прочтение5 мин
Охват и читатели254K

Для тестирования мобильных приложений, работающих с удаленными серверами, QA-инженеру приходится держать под рукой множество разных тестовых аккаунтов, логов, запросов и ответов. Реальность такова, что не всегда удается договориться о предоставлении нужных тестовых данных в срок. Чаще всего серверные разработчики будут незнакомыми вам людьми по ту сторону Скайпа. В таких ситуациях приходится своими руками подменять ответ сервера перед его передачей в приложение.

Чтобы редактировать выдачу сервера и воспроизводить сложные тестовые сценарии в QA Redmadrobot, мы используем Charles.
Читать дальше →

Опубликована программа Второй международной конференции мобильных разработчиков MBLTdev

Время на прочтение1 мин
Охват и читатели3.6K
Мы опубликовали программу мероприятия, которую вы можете посмотреть на сайте MBLTdev. В этом году программа будет поделена на несколько потоков: доклады и семинары для mid+ мобильных разработчиков и доклады для руководителей направлений мобильной разработки и IT-директоров. Программа будет постепенно дополняться новыми выступлениями, следите за новостями.



Среди подтвердившихся докладчиков:

  • Крис Эйдхоф, iOS-разработчик, основатель блога objc.io
  • Филлип Коннатон, iOS-разработчик, Runkeeper
  • Цезарь Валиенте, Android-разработчик, Wunderlist
  • Бриджит Лионс, QA, Soundcloud
Читать дальше →

Написание Unit-тестов. Mocking объектов

Время на прочтение17 мин
Охват и читатели41K
Кому нужны модульные тесты? Не Вам — Ваш код идеален. Но все же, Вам просто нужно прочитать эту статью, которая должна больше рассказать о написании модульных тестов на Swift’е. Вдруг это Вам в дальнейшем пригодиться.

Модульное тестирование являются отличным способом для написания безупречного кода; тестирование поможет Вам найти большинство ошибок на ранней стадии написания проекта. Как показывает опыт: если у Вас возникают трудности при тестировании кода, тогда у Вас возникнут сложности с его поддержкой или отладкой.

Модульное тестирование работает с изолированными “микрокомпонентами”. Зачастую Вам нужно «мокировать» классы – то есть обеспечить фейк функциональной реализацией, чтобы изолировать специфический микрокомпонент, таким образом, он сможет быть протестирован. В Objective-C существует несколько сторонних фреймворков, которые помогают это реализовать. Но они еще не доступны в Swift’е.

В этом руководстве Вы научитесь, писать свои собственные mock-обьекты, fakes и stub'ы, чтобы покрыть тестами давольно простое приложение, которое поможет вам запомнить дни рождения ваших друзей.
Читать дальше →

Тестирование на Android: Robolectric + Jenkins + JaСoСo

Время на прочтение5 мин
Охват и читатели30K
Тестирование Android приложений — тема большая и емкая, говорить о ней можно бесконечно. Мы в Rambler&Co автотесты любим, пишем и активно используем для всех наших приложений. В данной статье мы расскажем, как получать и анализировать результаты тестирования android (и не только) приложений. Покажем как настроить Robolectric, JaCoCo и Jenkins, чтобы было вот так:


Читать дальше →

История одного факапа Яндекс.Навигатора. В шести действиях с прологом и раскаянием

Время на прочтение4 мин
Охват и читатели130K
Факапы случаются и у больших компаний, с тестировщиками и строгими релизными процедурами. В понедельник такой факап случился у нас — мы выкатили версию Яндекс.Навигатора под Андроид с неприятной ошибкой: приложение постоянно держало включённым микрофон и записывало весь звук в локальный файл. В результате быстро забивалось место на устройстве, да и просто это выглядело подозрительно, хотя содержимое файла по сети никуда и никогда не передавалось.



Сейчас ошибка уже исправлена, в сторе версия, которая её не содержит. Мы обнаружили проблему довольно быстро благодаря нашим пользователям и уже через несколько часов после релиза остановили раздачу обновления и оперативно опубликовали исправление.

Мы решили не стесняться, а поделиться с вами опытом, который из этой ситуации извлекли. Возможно, это поможет вам быть лучше. Как обычно, причиной стало сочетание технологических факторов и дискоммуникации между людьми. Подробности — под катом.
Шесть драматических действий с прологом и раскаянием

Использование Intel HAXM при разработке приложений для Android Wear и TV

Время на прочтение5 мин
Охват и читатели40K
За плечами платформы Android долгий путь. Всё началось со смартфонов, потом были планшеты, дальше – устройства, работающие под управлением Google TV, Android Wear, Android TV (вместо Google TV), и, наконец – Android Auto. Сборка и тестирование приложений, которые предназначены для всего этого разнообразия, могут стать непростыми задачами для разработчиков. А если добавить сюда различные форм-факторы и разрешения экранов устройств, можно быстро столкнуться с проблемой всесторонней проверки и тестирования программ. Как же быть? К счастью, у нас есть Intel HAXM.

Читать дальше →

SCADA и мобильники: оценка безопасности приложений, превращающих смартфон в пульт управления заводом

Время на прочтение9 мин
Охват и читатели18K
image

Сегодня мобильные технологии – неотъемлемая часть нашей жизни, и иногда проникают туда, где их не следовало бы использовать. Удобство часто оказывается важнее безопасности. Сейчас можно отслеживать состояние АСУ ТП (автоматизированной системы управления технологическим процессом) или даже управлять ей с новенького смартфона на Android или iOS. Поищите “HMI” (человеко-машинный интерфейс), “SCADA” (система диспетчерского контроля и сбора данных) или “PLC” (программируемый логический контроллер) в магазине Google Play, и вы удивитесь количеству результатов. Более того, многие из этих приложений разработаны серьезными производителями: Siemens, GE, Omron и т. д., и обеспечивают доступ, контроль и управление HMI, PLC, DCS (распределенная система управления) и SCADA-системами в инфраструктуре АСУ ТП. Безопасны ли они? Может ли злоумышленник нанести вред, получив доступ к планшету инженера-технолога? Какие уязвимости существуют в этих приложениях? Какие векторы атак возможны?
Читать дальше →

М-м-м-м… Маршмэллоу: что нового в Android 6 и Android SDK

Время на прочтение6 мин
Охват и читатели212K
Всем привет! Как вы все уже, наверное, знаете, шестая версия нашей ОС Android наконец получила официальное название: Android 6.0 Marshmallow. Предположений о том, как именно будет называться новая версия было много: и Milkshake, и Merengue, и M&M’s с MilkyWay. Кроме того, вышла финальная версия Android SDK, поддерживающая все новые возможности OS Android. О названии, инструментах для разработчиков, самых важных улучшениях и о том, что нас ждёт с приходом Android 6.0, сегодня и поговорим.


Читать дальше →

Используем CircleCI для тестирования и деплоя iOS приложений

Время на прочтение3 мин
Охват и читатели11K
CircleCI — это continuous integration сервис для веб и мобильных приложений. В статье опишу процесс настройки CircleCI для тестирования и последующего деплоя билда на Crashlytics.

Одно из преимуществ данного сервиса — сборка билда в облаке, то есть не нужна локальная билд-машина. Сервис позволяет гибко настраивать тестирование сборки, так как у пользователя есть доступ к sudo. Также существует возможность устанавливать сторонние пакеты. На данный момент поддержка iOS находится в бете, поэтому надо писать в support, чтобы открыли доступ.
Кого заинтересовал — прошу под кат.
Читать дальше

Новый взгляд на MindMap в тестировании

Время на прочтение5 мин
Охват и читатели31K


Любой маломальски опытный QA-инженер (или в простонародье тестировщик) сможет сходу назвать пяток различных видов тестов: удобство пользователя, дымовое, нагрузочное, регрессионное, конфигурационное, тестирование взаимодействия и т.д. Какие-то виды тестирования используются редко, например нагрузочное, почаще применяется тестирование удобства пользователя, о таких экзотических видах, как конфигурационное тестирование или тестирование взаимодействия, многие вообще слышали только в книгах Канера и Фолка «Тестирование программного обеспечения» и никогда не использовали в работе. Но есть вид тестирования, про который можно сказать совершенно четко: его делал каждый. Я говорю о регрессионном функциональном тестировании. Этот вид теста, пожалуй, является одним из наиболее важных, нудных и трудоемких.

Читать дальше →

Как сделать кэш браузера не таким бесполезным, как обычно

Время на прочтение7 мин
Охват и читатели45K
Хочу рассказать вам о том, как мы в Яндекс.Браузере попытались сделать кэш не таким бесполезным для пользователей, как обычно. В недавно вышедшей новой бете Яндекс.Браузера для Android (планируем и для других ОС) можно получить доступ к недавно посещенным сайтам даже при отсутствии соединения с интернетом. Причём работать это должно гораздо надёжнее и удобнее, чем всё, что вы видели до этого.



Чтобы это стало возможным, мы придумали собственное кластерное кэширование, алгоритм работы которого следит за тем, чтобы сохранять страницы максимально целостно. Подробности об устройстве всего — под катом.
Читать дальше →

Генерируем номер версии и билда на иконке iOS приложения

Время на прочтение2 мин
Охват и читатели12K


В процессе разработки приложение тестируется, и бывает, что нужно знать, какая версия приложения и с каким номером сборки у тестировщика/другого участника процесса установлена. Например, баг уже исправлен, а человек новый билд ещё не поставил и сетует, что ничего не исправлено.

Зачастую эту информацию прячут где-нибудь, например, в приложении Яндекс.Маркет, нужно ткнуть в раздел Кабинет и выбрать пункт «О приложении»:

Пример

Для удобства (или потому, что этот экран ещё не готов), можно вынести эту полезную информацию прямо на иконку приложения.
Читать дальше →

40+ полезных инструментов для разработчика приложений под Android

Время на прочтение6 мин
Охват и читатели56K
Для выхода на мобильный рынок не нужно тратить тысячи долларов и месяцы работы. Для создания приложения для собственного бизнеса, продукта или услуги вам нужно лишь знать Java и найти подходящие инструменты. Сейчас таких инструментов уже тысячи. Мы попытались составить из них набор, необходимый для разработки, тестирования, монетизации, анализа и улучшения приложений.

Некоторые приложения требуют покупки для использования всех расширенных возможностей.

41. JSONView
jsonview.com

image

Расширение для Firefox, которое позволяет просматривать JSON в браузере. Документ выглядит отформатированным, есть подсветка и можно сворачивать и раскрывать объекты и массивы.

40. Android GUI Set
www.bypeople.com/free-photoshop-android-interface-gui

image

Набор интерфейсов, в который входят и файлы для фотошопа. Главное меню, клавиатура, панель статуса, браузер, слайдер, список контактов, и т.д. и т.п.
Читать дальше →

Ближайшие события

Google Developer Launchpad — программа Google для стартапов

Время на прочтение4 мин
Охват и читатели20K
Хабр, привет! Не так давно мы уже делились информацией о программе для стартапов от Google, — Google Developers Launchpad. Сейчас мы бы хотели подробнее рассказать о возможностях и преимуществах этой программы.



Программа Launchpad разделена на две стадии (или уровня) — Start и Scale. Участие в Launchpad’е является бесплатным, а у самой программы нет каких-то временных ограничений, хотя мы надеемся, что вы максимально быстро сможете из стартапа вырасти в приносящую прибыль кампанию (кому-то на это требуется 1-2 года, а кому-то и 5 лет мало, всё зависит от того, чем вы занимаетесь).
Android-стартапы, мы ждём вас!

Реализация идеи подписки не на человека, как в твиттере/инстаграме, а на место

Время на прочтение4 мин
Охват и читатели2.8K
Повествование реализации тривиальной идеи получать свежие изображения (на самом деле не только свежие и не только изображения), сделанные в определённой географической локации. Это могут быть места, где вы жили, где живёт кто-то близкий, просто интересно следить за запусками ракет на Байконуре или мысе Канаверал, что угодно, на самом деле, фантазии (и любопытству) нет предела.
Читать дальше →

TagConf 2015 — Пятая ежегодная IT-конференция в Таганроге

Время на прочтение2 мин
Охват и читатели2.8K
Каждый год компания Softline проводит в Таганроге крупнейшую региональную конференцию для разработчиков и тестировщиков – TagConf. В этот раз встреча будет организована совместно с нами, компанией Аркадия. Мы и наши коллеги из Softline представим вам 6 докладов. Событие состоится 11 июля — приходите, будет интересно!


Читать дальше →

Сервисы дистрибуции мобильных приложений для iOS. Часть 4 (заключительная): Fabric (Crashlytics)

Время на прочтение8 мин
Охват и читатели44K

Вступление


Четвёртая часть обзора будет посвящена сервису Fabric (первая часть обзора, вторая часть обзора, третья часть обзора).

Достаточно известный ранее сервис Crashlytics с осени 2014 года является частью Fabric — набора специализированных SDK (или, как сказано на официальном сайте, “modular, cross-platform mobile development suite”), каждый из которых возможно интегрировать по отдельности, либо совместно. В своем обзоре я остановлюсь только на Crashlytics Kit — сервисе и SDK, отвечающими за дистрибуцию мобильных приложений.

Система оценки: сервисы оцениваются по 10-балльной шкале по каждому из разделов (Регистрация и интеграция, Основной функционал, Дополнительный функционал, Continuous Integration). Суммарная оценка позволит определить победителя.
Читать далее. Осторожно, много картинок!

Google Developers Launchpad — всё что нужно для успешного старта

Время на прочтение1 мин
Охват и читатели14K
Привет, Хабр! Мы стараемся поддерживать разработчиков инструментами, технологиями, информацией и вниманием. Одно из направлений нашей деятельности — программа Google Developers Launchpad, система поддержки стартапов и разработчиков приложений. Она была не так давно запущена в мире и практически сразу пришла и в Россию.



В рамках этой программы мы предоставляем различные возможности: как бизнес-услуги, PR-продвижение, так и технические вещи. Например, доступ к сервису Firebase, расширенный доступ к Google Maps API, к инструментам тестирования и тому подобное. Мы также даём возможность командам один на один пообщаться с экспертами Google, которые могут оценить дизайн и инфраструктуру приложения, посоветовать, как лучше реализовывать те или иные функции или оптимизировать приложение.

Программа перспективная и ряд российских проектов уже прошел или сейчас проходит через неё. Вместе с проектом AppTractor.ru мы отобрали шесть участников Launchpad и поговорили с ними об их работе.
Читать дальше →

Automated QA System: таблетка от головной боли для тестировщиков на примере игры Star Crusade

Время на прочтение15 мин
Охват и читатели9.7K
Интервью с QA-архитектором Владимиром Савельевым продолжает серию наших публикаций на актуальные ИТ-темы. Владимир рассказывает об основных головных болях тестировщиков и делится эффективным способом их решения


Читать дальше →

Как помочь мануальному тестировщику. Автоматизаторы спешат на помощь

Время на прочтение7 мин
Охват и читатели25K
В любой команде, которая уделяет должное время тестированию, приходит тот момент, когда задается вопрос об автоматизации этого процесса. Как это происходит? Есть несколько путей для развития: либо сами тестировщики начинают автоматизировать, либо нанимается специально обученный человек, который, как панацея, должен решить все проблемы. В независимости от того, как это происходит, в конечном итоге мы все сталкиваемся с тем, что нужно как-то показать, что происходит, какова реальность — что же было сделано. Как говорил один мой коллега, «автоматизация ради автоматизации — это подобие культа Карго», так как бывает, что отдел автоматизации существует, а вот результата нет.

Итак, основная задача инженера-автоматизатора в том, чтобы сделать жизнь проще. В этот раз упростить жизнь мы собираемся отделу ручного тестирования (если таковой имеется) или же самим себе, если весь процесс тестирования возложен на наши плечи.
Читать дальше →