Виды тестирования мобильных приложений TYPES OF MOBILE APPS TESTING
Наше время – время мобильных устройств. Их количество в мире перевалило отметку в 5 млрд. i в 2017г., при населении земли, примерно в 7,5 млрд. человек. Мобильные устройства используются уже не только для того, чтобы обеспечивать людей мобильной связью, они выполняют все более и более разнообразные функции, начиная от предоставления доступа к сервисам коммуникаций, таким как, мессенджеры, электронная почта, социальные сети и заканчивая платежными функциями, например, Apple или Samsung pay. С развитием интернета вещей и, особенно, мобильной телематики, на мобильные устройства возлагаются функции по управлению различными устройствами и механизмами, автомобилями, дверями, и т.п. Вы можете отслеживать местоположение вашего ребенка, дистанционно запустить двигатель автомобиля или посмотреть через мобильный телефон, кто звонит вам в дверь. На мобильные устройства возлагаются все более критические функции, например, эквайринг или сигнал SOS (e-call) при автомобильной аварии. При таком использовании мобильных устройств повышаются требования к безотказной, корректной работе самого устройства, связи и приложений, которые на нем установлены. Для обеспечения качества работы последних проводится мобильное тестирование. We live in the era of mobile devices. The number of them exceeded 5 bln i in 2017, while the world population is approximately 7.5 bln people. Mobile devices are already used not only to provide cellular connection to people but they also offer more and more diverse functions from providing access to messengers, email, and social networks to payment functions like Apple and Samsung pay. The development of the Internet-of-Things and, especially, of mobile telematics equipped mobile devices with the control over various devices and mechanisms, such as vehicles, doors etc.You can follow your child’s location, remotely start the engine of your car or see who is knocking your door on the screen of your cell phone. Mobile devices are entrusted even more important functions, for example, acquiring or SOS signal (e-call) in the event of a car accident. These ways of using mobile devices set higher requirements to reliable and faultless work of the device, connection and installed applications. Mobile testing is run to ensure the proper operation of the latter.
Тестированию мобильных приложений уже много лет. Как и любое программное обеспечение, даже первые мобильные приложения проходили тестирование в том или ином виде. За время развития мобильных устройств, требования к тестированию мобильных приложений также изменялись, эволюционировали. Связано это с путем развития и усложнения мобильных систем. Если посмотреть на рынок смартфонов и планшетов, то видно огромное разнообразие размеров экранов, процессоров, объемов памяти, версий операционных систем (особенно, это касается Android), устройств ввода. Добавьте, помимо вышеперечисленных факторов различную скорость передачи данных (2G, 3G, LTE, WiFi) и наличие разнообразных технологий, таких как, GPS, акселерометров, гироскопов, которые присущи современным смартфонам и работа с которыми должна быть протестирована. Пример фрагментации устройств можно посмотреть в статистике, публикуемой Google по Android устройствам. Становится очевидным, насколько сложным и разнообразным становится мобильная разработка и мобильное тестирование. Именно поэтому при тестировании мобильных приложений используются сразу несколько отдельных видов тестирования, позволяющих разносторонне протестировать мобильное приложение. Mobile apps have been tested for many years. As any software even the very first mobile applications were somehow tested. Over the years of development of mobile deices the requirements towards testing of mobile applications were also changing and evolving. The reason for it was the development and complexification of mobile systems. Consider the market for smartphones and tablets. One can find a huge variety of screens, processors, memory volumes, OS versions (this is especially true for Android), and input devices. Add various data rates (2G, 3G, LTE, WiFi) and the availability of different technologies such as GPS, acceleration gages, gyroscopes in all modern smartphones, working with which should be tested. An example of device fragmentation is shown in the statistics published by Google for Android devices. It becomes obvious how complicated and varied the mobile development and testing is becoming. This is why several separate types of testing that allow testing mobile apps thoroughly are used.
Виды мобильного тестирования
Функциональное тестирование
Types of mobile testing
Functional Testing
Как и при тестировании любого программного обеспечения, в тестировании мобильных приложений используется функциональное тестирование, т.е. проверка, что функционал, заложенный в приложение работает и работает в соответствии с предъявляемыми функциональными требованиями. Функциональное тестирование мобильных приложений позволяет убедиться, что вся заявленная в требованиях функциональность работает и никакой дополнительной функциональности не реализовано. При современном функциональном тестировании мобильных приложений зачастую проверяется работа сложных, но интересных модулей, таких как, дополненной реальности или работа акселерометра и гироскопа. Зачастую применяются специфические инструменты для отслеживания передаваемых данных, такие как fiddler или charles. Similar to testing any software, functional testing is used for mobile devices. In other words, it means checking that the functions of the app work according to the functional requirements. Functional testing of mobile applications ensures that all demanded functionality is present and no additional functionality is introduced. Modern functional testing of mobile apps often involves checking of the operation of complex but interesting modules, for example, of augmented reality or of acceleration gage and gyroscope. Oftentimes specific tools to track the data, such as fiddler or charles are used.
Внешние события
External events
Мобильные устройства имеют одну особенность по сравнению с десктопными и веб системами, они умеют звонить, отправлять смс и ммс т.е. выполнять функции, для которых создавались изначально. При этом, выполнение данных функций не должно мешать работе приложения и наоборот. В ходе тестирования проверяется работа приложения в условиях звонков, приема смс, отсутствия сети или появлении оповещений. При тестировании прерываний важно понимать внутреннюю работу приложения, например, activity life cycle для Android приложений. В тестировании прерываний необходимо предусматривать и проверять максимальное количество различных вариаций. Compared to desktop and web systems, mobile devices can call, send SMS and MMS, i.e. actually execute the functions they were initially developed for. However, the execution of these functions should not interfere with the work of the application, while the opposite is also true. Testing involves checking the operation of the app with calls, incoming SMS, no network or pop-up notifications. When testing the interruptions, it is important to understand the internal operation of the app, for example, activity life cycle for Android applications. Testing the interruptions demands understanding and checking the maximum number of possible variations.
Тестирование безопасности
Security testing
Данный вид тестирования очень важен для критических приложений, таких как, мобильный банк, страховых приложений или мессенджеров. В ходе тестирования безопасности приложение проверяется на наличие уязвимостей, устойчивости к взлому, возможностям перехвата траффика с целью получения несанкционированного доступа к передаваемой приложением информации. В настоящее время, данный вид тестирования стоит особняком, в ряду прочих видов тестирования. Сотрудники, занимающиеся тестированием безопасности должны иметь специфические знания и навыки, которые отличаются от навыков, которыми обладают специалисты по другим видам тестирования. Этот вид тестирования очень с каждым годом становится все более критичным в связи с все большим распространением интернета вещей (IoT) и повышением доверия к нему со стороны потребителя. This type of testing is crucial for critical applications such as the mobile bank, insurance apps or messengers. Security testing of the app involves checking for vulnerabilities, crack resistance, possibility pf traffic interception to gain unauthorized access to the information transferred by the app. Nowadays this type of testing is set apart from other types of testing. The employees working with security testing should have special knowledge and skills that differ from the skills of other testing experts. This type of testing becomes more and more important every year as the Internet-of-things (IoT) becomes more and more widespread and the consumers trust it more and more.
Тестирование установки
Installation testing
Тестирование установки мобильного приложения является важной частью комплексного тестирования приложения. Необходимо тестировать чистую установку с нуля, установку поверх предыдущей версии, прерывания и отмену установки приложения. Вполне вероятна ситуация, на начальных стадиях тестирования, когда мобильное приложение, устанавливаемое поверх предыдущей версии будет работать некорректно. Testing of mobile app installation is an important part of the complex application testing. It is important to test installation from scratch, version upgrade, interruption and cancellation of the app installation. It is highly probable that at the initial testing stages the upgrade of the mobile app will be failing.
Тестирование производительности
Efficiency testing
Для мобильных устройств актуально тестирование производительности. Пользователи мобильного приложения установив его, удалят в большинстве случаев, заметив проблемы производительности, подвисания, медленную работу. При тестировании производительности, в первую очередь, проверяют серверную часть, т.е. бэк, хотя проблемы производительности, бывают вызваны и фронт разработкой, особенно, при использовании специфических SDK. Efficiency testing is important for mobile devices. The users of a mobile application will most likely delete it if they notice efficiency issues, hanging or slow operation after the installation. Efficiency testing mainly involves testing the server, i.e. the back, although the issues with efficiency may also be caused by the front development, especially, if specific SDKs are used.
Тестирование локализации
Localization testing
Данный вид тестирования аналогичен тестированию локализации на веб или десктопных системах. В ходе тестирования локализации проверяется работа приложения в выбранной стране, переводы текстов, интерфейсов, использование мер, присущих стране локализации. Зачастую, мобильные приложения в определенной стране имеют не просто переводную версию, а версию со значительными отличиями функционала, что может быть связано с культурными или законодательными особенностями страны, а также с наличием в стране собственных технологий и систем (например, системы навигации). This type of testing is similar to localization testing of web and desktop systems. Localization testing involves checking how the app works in the selected country, the translation of the app, the interfaces, the use of measures specific to the country of localization. Mobile apps in the particular country often differ not only in terms of the translation but also in terms of the functional, which may be caused by cultural or legislative specifics of the country as well as by the availability of domestic technologies and systems (for example, the navigation system).
Тестирование юзабилити
Usability testing
Приложение на мобильном устройстве должно быть удобным для использования, ровно, как и веб или десктоп приложение. Однако, имеет некоторые особенности, связанные с размером экрана, фрагментацией устройств и с ограничениями при работе одной рукой. При тестировании юзабилити на мобильных устройствах используются те же средства и методы, что и при тестировании десктопных систем. Например, подключение средств аналитики и фокус группы. Для тестирования юзабилити неплохо подходит краудтестинг. The mobile app should be as easy to use as a web or desktop application. However, there are some specifics due to the screen dimensions, fragmentation of the devices and limitations caused by one-hand mode. The methods and tools used for testing desktop systems are employed when testing usability for mobile devices. For example, the use of analytics and focus groups. Crowdtesting is useful for usability testing.
Комплексное тестирование мобильных приложений востребовано при тестировании комплексных приложений, таких как банковские мобильные приложения, приложения телеком операторов, приложения страховых компаний и т.п. В нашей компании мы тестируем как развлекательные приложения, например, мобильные игры, так и приложения, критически чувствительные к ошибкам, например, страховых компаний или мобильной телематики. При мобильном тестировании используются как реальные устройства, в офисе компании, так и арендованные фермы устройств, а также эмуляторы. Помимо функционального тестирования, мы проводим и другие виды тестирования, перечисленные выше. Complex testing of mobile applications is highly demanded when testing complex apps, foe example, mobile bank applications or applications of insurance companies. We offer testing of both, the entertainment apps, for example, mobile games, and of the applications especially sensitive to errors, for instance the apps of insurance companies or mobile telematics. Mobile testing involves the use of real devices in the office of the company, rented devices, as well as emulators. In addition to the functional testing we offer all other aforementioned types of testing.
Тестирование мобильных приложений
Компания «АРТВЕЛЛ» предлагает укомплектованные группы специалистов, обладающих обширным опытом тестирования мобильных приложений, для комплексного анализа и оценки соответствия требованиям к функциональным возможностям, требованиям к безопасности и надёжности.
«АРТВЕЛЛ» осуществляет системный подход к тестированию мобильных приложений и предоставляет полный спектр услуг от дымового тестирования и тестирования сборки (Smoke Testing, Build Verification Test) до комплексного тестирования (в т.ч. функциональное, нагрузочное, регрессионное и др.) и его автоматизации.
Для комплексного анализа мобильных приложений специалисты «АРТВЕЛЛ» используют огромный спектр как общих, так и специфических критериев оценки качества приложений:
- различные разрешения экрана;
- аппаратные конфигурации;
- многообразие версий различных операционных систем;
- кэширование изображений и содержимого экранов;
- реакция приложения на внешние прерывания (входящие/исходящие SMS и MMS, входящие/ исходящие звонки, отключение и подключение SD-карты и т.д.);
- поведение приложения в нештатных ситуациях (например, при изъятии аккумулятора);
- протоколы информационного обмена;
- шифрование данных;
- разные типы подключения к Интернету и защита от потери данных при обрывах связи.
Виды тестирования мобильных приложений
Специалисты «АРТВЕЛЛ» проводят комплексное исследование мобильных приложений для минимизации (исключения) возможности попадания дефектной (имеющей ошибки) версии приложения в электронные каталоги (AppStore, GooglePlay и др.), обеспечивая экспертную оценку по следующим направлениям:
- Функциональное тестирование.
- Регрессионное тестирование.
- Стресс-тестирование (monkey testing) — проверка поведения приложения при возникновении случайных и непредсказуемых событий (случайных действий пользователя).
- Нагрузочное тестирование.
- Анализ удобства использования (анализ юзабилити).
- Аттестационное тестирование — проверка соответствия приложения стандартам iPhone, Android и др.
- Анализ использования — мониторинг использования приложения (наиболее востребованные функции, часто используемые кнопки и т.д.) с помощью специальных средств сбора статистики («Google Analytics», «Flurry» и др).
Услуги «Артвелл» по тестированию мобильных приложений
- анализ и обследование приложения, включая анализ проектной документации (требований к дизайну приложения, к структуре страниц, к логике перехода пользователей между страницами приложения и т.д.);
- разработка методики тестирования и соответствующей документации, в том числе подробного плана тестирования;
- подбор и обоснование инструментов тестирования;
- проведение тестирования и регистрация результатов;
- составление отчёта о результатах тестирования;
- консультирование заказчика по устранению и контроль устранения;
- тестирование взаимодействия с внешними сервисами: Google Analytics, Flurry или другими системами статистики.
«АРТВЕЛЛ» использует широкий ряд различных способов и средств тестирования мобильных приложений в зависимости от особенностей отдельно взятого проекта и индивидуальных требований заказчика:
- тестирование на физических устройствах;
- эмуляторы;
- облачные платформы устройств;
- автоматизированное воспроизведение скриптовых тестов;
- инструменты для стресс-тестирования;
- инструменты для нагрузочного тестирования;
- системы сбора статистики;
- комплексные решения для тестирования.
Тестирование мобильных приложений: методы, инструменты, важные нюансы
Что это? Тестирование мобильных приложений – это проверка готового продукта на работоспособность. Данный этап разработки необходим для выявления багов, уязвимостей, проблем с дизайном и интерфейсом.
Как выполняется? Тестирование проходит в автоматическом и ручном режиме. Используются разные методы и инструменты. Также необходимо учитывать разницу между iOS и Android архитектурой.
В статье рассказывается:
- Что нужно учесть при тестировании мобильных приложений
- 5 методов тестирования мобильных приложений
- Разница в тестировании мобильных приложений iOS и Android
- Основные инструменты тестирования мобильных приложений
- Часто выявляемые ошибки при тестировании мобильных приложений
Пройди тест и узнай, какая сфера тебе подходит:
айти, дизайн или маркетинг.
Бесплатно от Geekbrains
Что нужно учесть при тестировании мобильных приложений
Сложность тестирования мобильных приложений заключается в том, что специалисту нужно проверить работоспособность программы на самых разных типах устройств. Если на одном смартфоне приложение функционирует нормально, то это не означает, что на другом не возникнет ошибок.
Кроме того, с каждым обновлением расширяется программная и аппаратная опциональность. Производители внедряют различные устройства: сим-карты, наушники, стилусы, bluetooth-устройства и т.д. Приложения должны быть адаптированы под все эти гаджеты.
С другой стороны, мобильное ПО, как правило, не имеет большого количества функций. С этой точки зрения тестирование программ для смартфонов является более простой задачей, чем аналогичная процедура с приложениями для ПК.
Чтобы протестировать мобильное приложение, специалист может потратить несколько недель. В некоторых случаях задача выполняется за считанные часы. Длительность проверки определяется масштабностью программы и конкретными целями, поставленными разработчиками.
Рассмотрим несколько важных нюансов, которые нужно учитывать в процессе тестирования мобильных приложений:
- Проверка на всех моделях устройств
Необходимо проверить приложение на различных версиях мобильных ОС, разрешениях экрана и т.д. Причём специалисту нужно работать со статистическими данными, чтобы протестировать программу на самых популярных устройствах.
Узнай, какие ИТ — профессии
входят в ТОП-30 с доходом
от 210 000 ₽/мес
Павел Симонов
Исполнительный директор Geekbrains
Команда GeekBrains совместно с международными специалистами по развитию карьеры подготовили материалы, которые помогут вам начать путь к профессии мечты.
Подборка содержит только самые востребованные и высокооплачиваемые специальности и направления в IT-сфере. 86% наших учеников с помощью данных материалов определились с карьерной целью на ближайшее будущее!
Скачивайте и используйте уже сегодня:
Павел Симонов
Исполнительный директор Geekbrains
Топ-30 самых востребованных и высокооплачиваемых профессий 2023
Поможет разобраться в актуальной ситуации на рынке труда
Подборка 50+ бесплатных нейросетей для упрощения работы и увеличения заработка
Только проверенные нейросети с доступом из России и свободным использованием
ТОП-100 площадок для поиска работы от GeekBrains
Список проверенных ресурсов реальных вакансий с доходом от 210 000 ₽
Получить подборку бесплатно
Уже скачали 23670
- Тестирование самой свежей и самой старой версии ОС и браузера
Чтобы пользователь понял, что приложение не получится установить на его ОС или браузер, разработчику необходимо добавить сообщение с просьбой выполнить обновление.
Специалисту нужно проверить все способы взаимодействия с приложением. Необходимо разработать так называемые тест-кейсы. В них должны описываться действия, направленные на проверку различных функций. Важно, чтобы тест-кейсы основывались на пользовательских сценариях (на конкретных способах решения определенных задач). Кроме того, нужно учесть возможные проблемы, с которыми может столкнуться пользователь.
- Оценка степени удобства обновлений
У пользователя должна быть возможность без труда обновить приложение. Тестировщику следует понять, как будет функционировать программа, если человек не станет выполнять эту процедуру.
- Анализ поведения приложения при слабой сети
Тестировщику нужно определить, как будет функционировать приложение, если интернет-соединение станет нестабильным. Например, когда пользователь будет ехать в лифте. В идеале приложение должно выдавать четкую реакцию на такие случаи.
- Тестирование взаимодействия с интерфейсом
В процессе ui-тестирования мобильного приложения необходимо проанализировать несколько важнейших параметров: функциональность, безопасность и удобство. Тестировщику нужно обращать внимание на каждую мелочь. Может ли пользователь без каких-либо затруднений переключиться между приложениями? Что должно произойти в этот момент?
Нативные приложения могут взаимодействовать с функционалом устройства. К примеру, в случае с iOS программы, для использования которых требуется микрофон, запрашивают соответствующее разрешение у пользователя.
Новичку потребуется ознакомиться с руководствами: Human Interface Guidelines от Apple и Material Design для Android. В них описаны критерии, которым должны соответствовать программы для различных ОС.
5 методов тестирования мобильных приложений
Сфера разработки мобильных приложений активно развивается. Появляются новые методы тестирования, позволяющие организовывать разносторонние проверки программ.
Функциональное тестирование
В этом случае тестируется функционал ПО. Выясняется, соответствует ли он заявленным требованиям. Функциональное тестирование мобильных приложений предполагает наличие целого ряда проверок:
- анализ процесса установки;
- тестирование процесса регистрации и авторизации;
- эксплуатационное тестирование;
- тестирование возможности обновлений;
- тестирование специфических для устройства функций;
- тестирование сервисов: работоспособность в офлайн- и онлайн-режиме.
- тестирование отправки и получения сообщений об ошибках;
- тестирование ресурсов: затраты памяти, автоматическое освобождение ресурсов и т.д.
Внешние события или тестирование прерываний
В этом случае специалист тестирует приложение на корректность работы в случае поступления звонков, получения сообщений и оповещений. Нужно понять, как будет вести себя программа при отсутствии и восстановлении соединения с интернетом, подключении и отключении от сети электропитания.
Тестирование производительности
Есть несколько типов такого тестирования:
- Проверка производительность устройства. Тестировщик выясняет, насколько стабильно работает программа на различных гаджетах. Благодаря этому разработчики могут исправить ошибки, которые ведут к задержкам или потерям данных при использовании приложения. Нужно понять, сколько памяти и ресурсов батареи затрачивает ПО. Плюс ко всему, специалист замеряет скорость работы программы.
- Проверка производительности сервера. Насколько быстро отвечает сервер? Оперативно ли обрабатываются данные? Тестировщику нужно ответить на эти и некоторые другие вопросы.
- Проверка производительность сети. Специалисту в первую очередь необходимо протестировать задержку и пропускную способность. Для этого нужно подключить устройство к различным сетям (3G-, 4G- и 5G-сети).
Как проходит тестирование мобильных приложений, что проверяют и кто это делает, в чем отличия ручного тестирования от авто-тестов, сколько стоит нанять в штат тестировщика
Зачем нужно тестировать? Тут все просто: если выкатить сырой продукт, то пользователи тут же оставят десятки гневных отзывов и низкие оценки. Другие зайдут, увидят все это и даже не станут скачивать.
Редактировать
Зачем нужно тестировать приложения?
Если выложить приложение, в котором тьма ошибок, и куча багов, то пользователи оставят кучу гневных отзывов и низкие оценки. Другие зайдут, увидят и даже не станут скачивать.
Редактировать
Founder, Executive Partner
Типы тестирования мобильных приложений
Нагрузочное или тест на производительность, восстановление, интеграционное, тестирование функциональности, безопасности, юзабилити и тестирование совместимости.
Редактировать
Founder, Executive Partner
Сколько платят тестировщикам мобильных приложений?
Новички от 25 до 40 тысяч рублей, среднего уровня в 40-100 тысяч рублей, опытные QA–инженеры от 100 тысяч рублей до 161 тысячи рублей.
Редактировать
Founder, Executive Partner
Тестирование приложений
Тестирование мобильных приложений происходит еще до того как будет готова полноценная версия. Это чертовски важная часть разработки.
Зачем нужно тестировать? Тут все просто: если выкатить на App Store и Google Play приложение, в котором тьма ошибок, все виснет и куча багов, то пользователи тут же оставят десятки гневных отзывов и низкие оценки. Другие зайдут, увидят все это и даже не станут скачивать.
Сам по себе процесс тестирования приложений довольно сложен. Нужно учитывать:
- десятки возможных разрешений экрана
- разные отличия в устройствах пользователей
- разные версии операционных систем
- у пользователя хороший wi-fi или другой тип подключения к интернету.
Редактировать
Founder, Executive Partner
Типы тестирования мобильных приложений (v2)
Специалисты–тестировщики выделяют несколько основных типов тестирования. У каждого из них своя цель.
- Нагрузочное тестирование или тест на производительность.
- Тестирование на восстановление.
- Интеграционное тестирование.
- Тестирование функциональности.
- Тестирование безопасности.
- Юзабилити–тестирование.
- Тестирование совместимости.
На каждом из них остановимся подробнее.
Редактировать
Founder, Executive Partner
Нагрузочное тестирование приложения
Это автоматическое тестирование, которое проверяет нагрузку на приложение: сколько пользователей одновременно могут в нем сидеть.
- На этом тестировании проверяют как себя поведет приложение, если сразу большое число пользователей будет выполнять в нем одни и те же операции.
- Что случится, если приложение при средней нагрузке (среднем количестве пользователей) будут использовать несколько часов без перерыва. Как это скажется на работоспособности.
- Тестируют приложение в разных стресс–условиях.
- Проверяют, как все будет работать, если база данных серьезно вырастет. Будет ли все тормозить.
Редактировать
Founder, Executive Partner
Тестирование мобильного приложения на восстановление
На этом тестировании проверяют, как приложение ведет себя при сбоях, которые появляются из–за прерванного интернета, «зависшего» или неожиданно отключившегося телефона. Может ли приложение быстро и успешно восстановиться. И может ли как–то противостоять этим проблемам.
Такое тестирование применяют не во всех приложениях. Да всем оно и не нужно. По–настоящему важно это для приложений, которые должны работать беспрерывно, 24*7.
Редактировать
Founder, Executive Partner
Интеграционное тестирование
В чем–то похоже на тестирование восстановления. Только здесь проверяют, как себя поведет приложение, если его работа прервется из–за других приложений. Например, придет смска или сообщение в телеграмм, зазвонит телефон. Или пользователь случайно свернет приложение или оно останется работать в фоновом режиме.
Все эти сценарии проходят тестировщики. Смотрят, как поведет себя приложение с разных ситуациях.
Редактировать
Founder, Executive Partner
Тестирование функциональности мобильного приложения
Здесь проверяют, выполняет ли приложение свои функции, ради которых оно создавалось. Может ли пользователь провести в нем оплату.
Также смотрят на такие моменты:
- Как ведет себя приложение, если пользователю звонят. Переходит ли оно в фоновый режим. Для этого тестировщики берут другой телефон и звонят на тестируемый с запущенным приложением.
- Тестирует, приходят ли человеку смс, когда он пользуется приложением, сохраняет ли их телефон.
- Смотрят, как работают кнопки для работы с соцсетями.
- Проверяют, дружит ли приложение с разными платежными системами.
- Тестируют нормально ли там все прокручивается на страницах.
- Убеждаются, что пользователям придут сообщения о ошибках, если что–то пойдет не так. Например, «ошибка сети», если соединение с интернетом оборвется внезапно
- Проверяют, не воюет ли приложение с другими, не забирает ли их память.
Редактировать
Founder, Executive Partner
Тестирование безопасности
Здесь проверяют безопасность системы, насколько защищено приложение от хакерских атак, вирусов, взломов, доступа к данным пользователя посторонними людьми.
- Первым делом проверяют, защищены ли данные пользователей, пароли, номера банковских карт. Не могут ли взломщики подобрать данные для входа.
- Смотрят, чтобы приложение не давало доступ к секретному контенту пользователя без проверки прав доступа.
- Тестируют, требует ли система безопасности придумать надежный пароль, а не 12345.
Редактировать
Founder, Executive Partner
Юзабилити–тестирование
На этом тестировании проверяют, удобно ли пользователю в приложении, все ли доступно и понятно в интерфейсе.
Например, проверяют, все ли кнопки в приложении нормального размера. А если пальцы крупные, человек сможет нажать?
Что пользователь сразу находит нужную кнопку и не путается.
Тестируют работу систем масштабирования: может ли пользователь что–то увеличить на экране приложения, а потом уменьшить, если нужно.
Что пользователь может отменять свои действия, возвращаться на предыдущие экраны.
Проверяют, все ли тексты в приложении пользователь видит, находят оптимальный шрифт.
Что в приложении есть онбординг или другой способ донести до пользователя информацию, как всем функционалом пользоваться.
Редактировать
Founder, Executive Partner
Тестирование совместимости
Его проводят, чтобы убедиться, что приложение отлично ведет себя на разных устройствах, работает одинаково хорошо и на телефоне, и на планшете, на разных версиях операционной системы, с разным подключением к интернету.
Особенно проверяют такие моменты:
- Что текст и иконки приложения не выходят за рамки экрана.
- Что текст легко читается на экранах разного размера.
- Что разные функции устройства работают при включенном приложении.
Так как конфигураций и сценариев тут может быть уйма, процесс тестирования совместимости стараются максимально автоматизировать.
Редактировать
Founder, Executive Partner
Автоматизированные тесты мобильных приложений
Многие сценарии тестируют вручную. Но в последнее время все больше компаний переходит на автотесты. Плюсов у них много:
- Можно быстро найти ошибки и баги, прямо на начальном этапе разработки. И все быстро поправить.
- Ускоряют разработку.
- Экономят ресурсы.
Но есть и проблемы: нужно время (и навык), чтобы автотесты написать и внедрить. Потом их еще нужно будет поддерживать.
Редактировать
Founder, Executive Partner
Кто проводит тестирование приложений
Этим в компании занимаются тестировщики. Они смотрят на продукт и глазами разработчиков, и глазами пользователей. Специалисты высокого уровня могут вмешаться еще на этапе разработки и подсказать, как сделать удобнее для людей.
Можно выделить две группы тестировщиков мобильных приложений:
- Альфа–тестировщики. Они ищут ошибки и баги еще на стадии разработки приложения. Они, как правило, трудятся в штате компании.
- Бета–тестировщики. Они проверяют полную, уже готовую, версию приложения. Эту работу, помимо штатных тестировщиков, могут выполнять разработчики компании и сами пользователи. В последнем случае это работает, если люди знают продукт и с нетерпением ждут релиз.
Редактировать
Founder, Executive Partner
Сколько тестировщиков приложений нужно компании?
Точного ответа тут никто не даст. Все зависит от компании, продукта, количества приложений, которые надо тестировать и еще кучи других факторов.
Чаще других используют такие подходы:
- Один тестировщик на каждого разработчика.
- Один тестировщик на 10 разработчиков.
- 40% тестировщиков от численности команды разработки.
Многие компании, особенно те, что работают по методологии Agile, и вовсе обходятся без тестировщиков. Они работают по технике Test-driven development (TDD).
Если кратко, то тестированием занимается вся команда. А разработчики пишут автотесты на коды друг друга.
Редактировать
Переквалификация в IT
Станьте руководителем Digital–продукта в Enterprise
Начать обучение →
Разновидности тестировщиков
У тестировщиков есть разные специализации и функционал:
- Самая распространенная профессия — функциональный тестировщик (он же Manual QA engineer). Это как раз тот самый человек, который проводит ручные тесты. Он изучает специфику продукта, разрабатывает методы для проверки, все найденные ошибки и проблемы описывает в технической документации, часто на английском.
- Тестировщик–автоматизатор. Он занимается автоматическим тестированием. Точнее, на основе готовых тестов он пишет код, который будет автоматически все тестировать. То есть по сути программу, которая заменит работу функционального тестировщика. При этом он должен хорошо разбираться в ручном тестировании. Иначе будет сложно писать эффективные тесты для проверки.
- Security–тестировщик. Этот специалист отвечает за проверку систем безопасности.
- Business intelligence. Тестировщик, который работает с большими объемами данных.
- Performance–тестировщик контролирует производительность программного обеспечения и нагрузку на приложения.
- Usability–тестировщик. Этот специалист занимается проверкой продукта, но он ищет не столько баги, сколько оценивает удобство в использовании для обычных людей, привлекательность продукта для пользователей.
Эти специальности могут смешиваться внутри компании. Многие хотят иметь универсального тестировщика под рукой. Главная проблема среди тестировщиком в том, что один может круто придумывать тесты, но не уметь кодить. А другой — классный разработчик, который мог бы писать автоматические программы для проверки. Вот только он не разбирается в ручном тестировании. А значит, и придумывать хорошие автотесты ему будет сложно.