С тех пор, как к кредитным учреждениям намертво «приклеилось» утверждение, что «банк — это IT-компания с банковской лицензией», к ним автоматически перешел весь набор технологий, которые позволяют разрабатывать и тестировать программные продукты.
По понятным причинам в число приоритетных видов ПО стабильно входят клиентские мобильные приложения для ДБО и мобильных кошельков. Люди небезосновательно полагают, что именно на их смартфоне программы должны работать без сбоев и максимально быстро.
Однако завышенные клиентские ожидания, подогреваемые банковскими маркетологами и рекламщиками, превращают тестирование мобильных приложений в нетривиальную и сложную задачу. Именно такой вывод сделан в ходе последнего исследования компании «Перфоманс Лаб» под названием «Индекс тестового покрытия цифровых устройств», в котором приводятся результаты исследования статистики применения мобильных устройств на территории России в первом полугодии 2017-го.
Почему данные аналитиков важны банкирам? Согласно статистике, 80% людей удаляют приложение после первого использования. Среди четырех основных причин удаления приложений выделяют плохой дизайн, неудобство использования, долгое время загрузки и сбои сразу после запуска. Почти 60% пользователей удаляют приложение, если оно требует регистрации, и почти половина ожидает от него загрузки не более чем за две секунды. Учитывая тот факт, что обычный человек проверяет свой мобильный телефон в среднем каждые шесть минут и имеет около сорока установленных приложений, можно сделать вывод, что сейчас к мобильным приложениям должны применяться повышенные стандарты надежности, производительности и удобства использования.
«Таким образом, качество цифрового продукта становится одной из важнейших целей разработчиков, а также накладывает дополнительные сложности на процесс тестирования, например, за счет необходимости проведения тестов на реальных устройствах в реальных условиях использования. Такой подход постепенно замещает тестирование на эмуляторах. Эмуляцию можно использовать для оценки функциональности приложения, но весьма ограниченно. Тестирование на эмуляторах недорого, как минимум, по причине бесплатности большинства из них, но такой метод не может учитывать реальных факторов использования, например прерывание работы приложения из-за низкого заряда батареи или конфликта приложений», — делает вывод в тексте данного исследования Юрий Ковалев, управляющий партнер компании «Перфоманс Лаб».
Многообразие производителей и операционных систем требует точности и строгости в составлении мобильного парка реальных устройств. Определяющее значение здесь имеет понимание состава платформ для тестирования и частоты проведения тестирования.
«Когда тестировщик запускает автотесты одновременно на сорока устройствах, половина нашего офиса зависает при входе (там стоит шкаф), так как это зрелище достойно фантастического фильма! Представьте — вы наблюдаете за тем, как ваше приложение одновременно работает на android, iOS разных версий, размеров экрана, на планшетах и телефонах. Когда где-то происходит сбой, это сразу видно. Вы сможете сделать ваше приложение по-настоящему качественным и покорить ваших пользователей, оставив конкурентов далеко позади», — пишет Юрий Ковалев.
За дополнительными новостями индустрии тестирования ПО редакция «Б.О» обратилась к Павлу Эйделанду, руководителю Центра тестирования компании «Аплана». На наш вопрос «Какие изменения произошли за последний год в направлении тестирования информационных банковских систем?» эксперт дал следующий ответ: «Произошли заметные сдвиги в сторону автоматизации тестирования, этот вид тестирования получает все большее распространение. И это не только про традиционную автоматизацию работы с GUI, а в том числе про тестирование API, про использование роботизированных конструкций, про «полуавтоматизацию», когда есть некая помощь для ускорения ручного тестирования. Также можно заметить, что происходит серьезный сдвиг в сторону бесплатных продуктов, и с этим приходится считаться серьезным вендорам, предлагающим коммерческие решения».
Не могли мы не спросить и о том, как влияет на сегмент тестирования развитие систем дистанционного банковского обслуживания, в частности, как повлияло на работу специалистов внедрение таких платежных сервисов, как Android Pay и Samsung Pay. Насколько сложным и кропотливым является интеграционное тестирование этих систем?
«Увеличивается доля мобильного тестирования, тестирования на устройствах. Общая методология окончательно сдвигается в сторону гибких схем и интеграции в команды разработки. Android Pay, Apple Pay и Samsung Pay никак не повлияли на подход к тестированию, так как с точки зрения банка — это обычный платеж, для которого мобильное устройство предоставляет интерфейс. Сами системы не тестируются, так как их доработки находятся за пределами эксплуатирующих организаций (банков)», — уверен Павел Эйделанд.
Так в чем же сейчас проявляется значение и в чем заключается специфика тестирования мобильных приложений, разрабатываемых банкирами или для банкиров?
«Услуга тестирования обязательна для критичных бизнес-систем, к которым, безусловно, относятся и мобильные приложения. В десктопных приложениях цена ошибки в некотором смысле ниже, потому что при появлении дефекта можно его срочно исправить и выложить новую версию. С мобильными приложениями все гораздо сложнее: выход версий происходит с некоей периодичностью, определенной Google Play и AppStore, и, если пользователи уже загрузили версию с дефектами, принудить их загрузить корректный вариант проблематично. По статистике, примерно половина пользователей уверена, что приложение должно загружаться не более двух секунд. Таким образом, повышенные ожидания к качеству мобильных приложений накладывают особую ответственность на участников процесса разработки, включая тестирование. Мобильные приложения раньше обладали ограниченным функционалом, но в последнее время они становятся все более сложными, и из тонких клиентов к ним переходит все больше функций. Это видно на примере социальных сетей и различных корпоративных приложений», — рассказал «Б.О» представитель компании «Аплана».
Поэтому тестирование нуждается в постоянном улучшении, как и любой другой процесс. Возникал ли хоть раз вопрос «Как улучшить?». Естественно, и не раз! Можно прибегнуть к некой конкретной методике, можно использовать отдельные принципы популярных практик. Но, прежде чем приступить к действию, лучше всего прислушаться к специалистам-практикам.
Например, не так давно на ежегодной конференции компании «Сбербанк-Технологии» «Quality Days», посвященной вопросам эксплуатации, тестирования и разработки программного обеспечения, представители «Сбертеха» заявили, что они не против делиться наработками применения DevOps-практик для ускорения процессов разработки и интеграции в delivery pipeline процессов автоматизированного тестирования. Наверняка и в других банках, и у представителей IT-компаний накопилось немало ценного практического опыта. Что же, будем отслеживать ситуацию и делиться новостями.