Рубрика «Тестирование мобильных приложений» - 34

Мобильные приложения и PA-DSS - 1

Автор: Роман Денисенко, старший инженер по тестированию.

Из-за специфики моей работы, мне часто задают вопросы вида «у нас есть прекрасное мобильное приложение, и мы собираемся добавить в него возможность платежей банковскими картами. Но мы немного обеспокоены по поводу стандарта PCI PA-DSS. Что нам следует делать?». Чтобы облегчить себе жизнь, я решил написать статью, разъясняющую отношение стандарта PCI PA-DSS к рядовым мобильным приложениям, живущим в миллионах мобильников по всему миру.

Для начала давайте вспомним, что такое PCI PA-DSS и с чем его вообще едят. Стандарт PA-DSS был разработан PCI SSC (Payment Card Industry Security Standards Council) и является своего родом адаптацией требований стандарта PCI DSS к отдельным приложениям. Действие стандарта распространяется на все приложения, обрабатывающие данные о держателях карт. Его основная функция — реализация возможности безболезненной интеграции сертифицированного платежного приложения в инфраструктуру, работающую в рамках стандарта PCI DSS. Таким образом, любая компания, сертифицируемая по стандарту PCI DSS, может использовать PA-DSS-сертифицированный софт внутри своей инфраструктуры без каких-либо дополнительных проверок.
Читать полностью »

Тестирование своего приложения — 9 полезных советов для разработчика - 1

Сейчас в каталогах приложений Apple App Store и Google Play в совокупности размещено около 3 миллионов мобильных программ. Количество приложений стабильно растет, чего нельзя сказать о качестве подавляющего количества уже размещенных программ. Одна из причин такой ситуации — разработчики недостаточно хорошо тестируют приложения, во многом это происходит из-за отсутствия должного опыта.

Профессиональный тестировщик, конечно же, смог бы помочь довести мобильное приложение практически до идеального состояния. Но у большинства разработчиков обычно нет средств на оплату услуг такого профессионала. А пользователи не хотят мириться с плохим качеством. И если пользователь обнаруживает серьезную проблему (чрезмерное потребление энергии, краш приложения, зависание телефона), то 44% пользователей, по статистике, сразу удаляют приложение, не разбираясь с проблемой. 96% таких пользователей пишут плохой отзыв о программе. На самом деле, причин, по которым приложение удаляется, довольно много, мы уже писали об этом в своем блоге. Сейчас давайте поговорим о том, что можно предпринять, чтобы приложение работало, как нужно, радуя пользователя стабильностью, а разработчика — доходом от рекламы.
Читать полностью »

image

Я помню то замечательное время, когда сборка релизной версии мобильного приложения сводилась к тому, что нужно было выставить debug = false и запустить экспорт apk-файла. Проходит 2 минуты, пока пыхтит IDE, и все готово. Все усилия сосредотачивались на необходимости указать данные сертификата подписи. Это было совсем недавно. Cейчас процесс сборки того самого приложения разросся настолько, что, если мне, вдруг, потребуется выполнить все операции самостоятельно, и даже если я все вспомню и проделаю безошибочно (во что я не верю), то это займет не час, который сегодня кажется непозволительно долгим, а, скорее всего, сутки, после чего терапевт обязан будет прописать мне больничный по усталости недели на две.

Итак, процесс сборки мобильного приложения. Попробую рассказать, из чего он у нас состоит — не потому, что в последнее время стало модным катать посты о CI той или иной мобильной команды (с покером, русалками и прочими обязательными атрибутами), а потому, что это отличный опыт, который я получил, работая над Почтой Mail.Ru для Android, и потому, что этой возможности, вероятнее всего, не было бы, работай я в другой команде, над другим проектом или в другой компании.
Читать полностью »

Не так давно мне довелось выступать на конференции FFConf с докладом «Вам следует использовать <впишите нужную библиотеку/фреймворк>, это самое лучшее!». И основные мысли я решил изложить в публикации, в надежде, что это спровоцирует в профессиональной среде более широкую дискуссию о «стоимости» современных фреймворков на мобильных устройствах.

Для желающих обратиться к оригиналу моего выступления вот видео:

и слайды презентации: speakerdeck.com/paullewis/framework-here-its-the-bestestest.
Читать полностью »

Кофе с огурцами (Espresso + Cucumber) - 1

    Относительно не так давно появилась замечательная библиотека Espresso для тестирования UI Android приложений. Её преимущества над аналогами обозревались не один раз. Если вкратце, то они заключаются в том, что это разработка Google для собственной ОС (ранее они сами использовали Robotium), а так же в лаконичности синтаксиса и скорости работы. Итак, мы решили идти в ногу со временем и использовать Espresso. Но нам мало тех плюсов, что уже есть, мы хотим BDD (http://en.wikipedia.org/wiki/Behavior-driven_development), мы хотим скриншотов и отчетов в json и html, мы хотим запускать это все на CI, в конце концов! Но обо всем по порядку. Я расскажу как подружить Cucumber (http://habrahabr.ru/post/62958/) и Espresso (http://habrahabr.ru/post/212425/) на небольшом примере. Всех, кто устал от Appium, кто хочет уйти от Robotium и тех, кому небезразлично тестирование Android, прошу под кат.
Читать полностью »

Риски и метрики в автоматизации тестирования - 1

Добрый день!
Бизнес любит измерять, менеджмент любит прозрачность, а сотрудники не любят всю эту бумажную работу, в особенности если от них хотят неизвестно что… Процессы автоматизации тестирования не исключение. Я приведу 5 рисков, которые чаще всего встречаются, которые стреляют, которые нельзя недооценивать, которые могут привести к провалу всего тестирования и проектов в целом. Также я приведу примеры метрик, добросовестное использование которых поможет успокоиться вам, вашему начальству, бизнесу.Читать полностью »

Рано или поздно каждый, кто организует конференции, сталкивается вот с такой ситуацией в обратной связи:

image

Расскажу, как мы это отлаживали и вообще о том, какие бывают грабли, когда на конференцию бородатых очкариков приезжают бородатые же очкарики. И наступает запредельная концентрация разработчиков. Читать полностью »

Рано или поздно каждый, кто организует конференции, сталкивается вот с такой ситуацией в обратной связи:

image

Расскажу, как мы это отлаживали и вообще о том, какие бывают грабли, когда на конференцию бородатых очкариков приезжают бородатые же очкарики. И наступает запредельная концентрация разработчиков. Читать полностью »

Животные – это платформы с очень ограниченной памятью, вычислительными способностями и возможностями модификаций. Разработчикам энимал-сцены приходится выдавать практически гениальные низкоуровневые алгоритмы. Правда, большое количество хардкода вызывает характерные проблемы с отсутствием проверки в экзотических условиях. Та же фильтрация входных данных делается очень и очень криво.

Вы неправильно пишете животных - 1
Уязвимость рекурсивных алгоритмов навигации муравья: спираль смерти

Не знаю, кто писал большую часть птиц, но я хочу обратить внимание на особенность, позволяющую провести инъекцию произвольного яйца в гнездо. Дело в том, что птица проверяет только расположение и количество яиц, но не их хэши. В 20% случаев кукушка, эксплуатирующая этот баг, может внести яйцо с сохранением контрольной суммы, чего вполне достаточно для повышения прав в гнезде.

Но пойдём далее. Я не знаю, кто разрабатывал архитектуру ящериц, но они бегают в одном процессе, а дышат в другом. При этом платформа не поддерживает многозадачность, поэтому костыль с максимальной длиной бега в 4-6 секунд просто эпичен. Читать полностью »

Я провожу собеседования на тестировщиков. У меня иногда болит голова.

Долго собирался написать статью… И вот, наконец, выполнил свое намерение. Вопросы, поднимаемые в статье, обсуждались уже не раз и не два, но усердные поиски компиляции ответов на эти вопросы так и не увенчались успехом. Но, как подсказывает мой опыт, такая компиляция очень нужна. Прежде всего она требуется юниорам, ибо в сети по запросу «тестирование» на них (соискателей) обрушивается огромный объем информационного мусора, который плохо структурирован и часто противоречит сам себе.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js