- Зачем нужны виртуальные устройства
- Эмуляция или симуляция?
- Что собой представляют эмуляторы
- О симуляторах
- Сравнение
- Советы
И эмуляторы, и симуляторы относятся к виртуальным устройствам, но между ними есть существенная разница. И поскольку это различие влияет на то, как строится процесс тестирования, давайте углубимся в эту тему.
Зачем нужны виртуальные устройства
Успешному релизу всегда предшествуют эффективное тестирование и отладка. А чтобы тестирование было эффективным, команде QA необходимо выбирать и использовать самые подходящие решения. Сейчас на рынке доступно много операционных систем и браузеров, не говоря уже о разнообразии «железа». Поэтому важно иметь солидный набор устройств для тестирования.
Дело в том, что тестирование приложения на одном смартфоне не гарантирует, что оно будет работать так же на другом устройстве. Чтобы охватить широкий спектр существующих смартфонов и планшетов, тестировщики могут использовать два типа устройств — реальные и виртуальные.
Преимущество реального устройства очевидно: вы используете точно такой же смартфон, как и ваши клиенты. Как это работает? Компания предоставляет своим сотрудникам различные физические устройства. Как правило, это самые распространенные смартфоны и планшеты iOS и Android. Список устройств должен постоянно обновляться, чтобы не отставать от рынка.
Однако было бы слишком сложно и дорого покупать все устройства, выпущенные в мире. Альтернативой стали виртуальные инструменты. Они экономически эффективны и очень полезны на ранних этапах тестирования.
Реальные устройства лучше работают на заключительных этапах тестирования программ, непосредственно перед выпуском. А виртуальные инструменты позволяют тестировать основные функции в самом начале, чтобы дефекты не накапливались. И в большинстве случаев этого достаточно для выпуска приложений без критических ошибок.
Эмуляция или симуляция
Итак, виртуальные инструменты тестирования, такие как симуляторы и эмуляторы, позволяют воспроизвести функциональность реальных мобильных устройств на ПК, имитируя возможные действия конечных пользователей. И эмуляторы, и симуляторы дают возможность запускать тесты ПО и получать быстрый ответ. То есть, благодаря им тестирование становится проще и быстрее по сравнению с запуском тестов на реальных устройствах.
Вопрос в том, взаимозаменяемы ли эти инструменты? А если нет, то в чем разница между эмулятором и симулятором в мобильном тестировании?
Короткий ответ — нет, эти инструменты не взаимозаменяемы, они работают по-разному и предлагают разный функционал.
Что собой представляют эмуляторы
Эмулятор — это дублирующая система, воспроизводящая функциональность исходной системы с использованием других методов и ресурсов — протоколов передачи данных, алгоритмов выполнения процедур и аппаратных ресурсов. Под исходной системой понимается сочетание программного обеспечения, операционной системы и аппаратного обеспечения.
Эмулятор может функционировать как виртуальная машина мобильной операционной системы на ПК. Эта машина воспроизводит почти все функции приложений и игр, работающих на базе iOS, Android и т. д. Окно эмулятора — это настоящий смартфон на ПК.
Что собой представляют симуляторы
Симулятор — это воспроизводящая система. Он может имитировать только программные характеристики и конфигурации, то есть внутреннюю работу устройства. Симуляторы часто используются для анализа, изучения и исследования целей. При этом симулятор может имитировать некоторые действия конечного пользователя, например, нажатие кнопок, запуск приложений, смахивание экрана.
Эмуляторы и симуляторы — сравнение
Давайте сравним эти инструменты по нескольким важным критериям.
Использование:
- эмуляторы предназначены для программного и аппаратного обеспечения
- симуляторы — для внутренних конфигураций.
Доступность:
- производители мобильных устройств предоставляют и эмуляторы, и симуляторы
- симуляторы бывают и сторонними.
Код:
- эмуляторы написаны на языках машинного уровня
- симуляторы написаны на высокоуровневых языках.
Автоматизация тестирования: применяются как эмуляторы, так и симуляторы.
Отладка: это задача для эмуляторов, а не для симуляторов.
На практике смартфоны Android легче эмулировать, поэтому симуляторы в основном предназначены для айфонов. Если вы раньше не использовали виртуальные устройства, начните с официальных инструментов — Android SDK и iOS Simulator (входит в состав Xcode).
Советы
Эмуляторы очень точно имитируют реальные устройства, но все же никогда полностью не заменят работу с ними. В частности, эмуляторы не могут воспроизвести некоторые важные функции и поведение, такие как время автономной работы, камера, прерывания и т. д.
Симуляторы вообще не учитывают технические характеристики оборудования, поэтому команда тестировщиков не получает сведений о реальной производительности.
С учетом всего этого компании, специализирующейся на тестировании, нужно иметь коллекцию реальных устройств.
Тем не менее, не стоит думать, что к виртуальным инструментам следует прибегать только в крайнем случае. Лучше всего сочетать реальные и виртуальные устройства.
Если вам нужно протестировать взаимодействие с внешними приложениями и средами, используйте симулятор. А если хотите проверить, как приложение взаимодействует с базовым оборудованием или оборудованием в сочетании с ПО, используйте эмулятор. После этого протестируйте программный продукт на нескольких реальных устройствах из числа наиболее широко используемых.