Testing android apps emulator

Android Emulators

Real Devices

Testing on Real Devices is better. Get Started Free

Testing on Real Devices is better. Get Started Free. Contact Us

Android Emulators vs Physical Devices

Android emulators simulate the hardware and software of Android devices on your computer so that you can test your Android apps without having a physical device in hand. While easily accessible and inexpensive, emulators have significant device hardware and software limitations. As a result, your mobile app may pass an Android emulator test, but fail on a real device. In fact, Google even recommends that you test your mobile app on a real device prior to submitting it to the Play Store!

How do Android Emulators and Physical Android Devices compare

After speaking to our tens of thousands of customers, we have created a checklist that compares what you can test on emulators and real devices.

Advantages of testing real devices in the cloud

Compared to Android emulators, physical Android devices have the benefit of testing performance and accuracy. However, this requires buying, configuring and maintaining a lab of devices. Our Real Device Cloud gives you instant access to 1000s of real Android devices to test your mobile applications, right from your browser.

Android Emulator Physical Android Device Browserstack Real Devices
Mobile App Functionality
App basic functionality and UI layout
Test interrupts, battery consumption, CPU & memory utilization
Natural gestures (tap, scroll, zoom, pinch, pinch and zoom and more)
Colors and resolutions which render differently on different screen densities
UI performance (transitions and orientation)
Hardware functionality (bluetooth, camera, gps, and more) Coming soon
App performance across device configurations (chipsets, memory, etc.)
Criteria Physical Android Device BrowserStack Real Device Cloud
Procurement Difficult Easy
Storage Difficult Easy
Maintenance Difficult Easy
Parallel testing Difficult Easy
Sharing devices between remote teams Difficult Easy
Device coverage Up to $1200 per device $59 per month

Frequently Asked Questions

What is an Android Emulator?

An Android Emulator is used to mimic a specific device that runs on an Android operating system (OS). Android Emulators can help test applications on Android devices, to avoid any production defects.

Why do users opt for an Android Emulator?

Android user base accounts for close to 75% of the global market share, as Statcounter. Hence, for any app or website developer, providing a clean and bug-free experience for users running Android OS becomes very critical. Interestingly, the number of Android users on different versions are equally distributed with Oreo 8.1 (19%), Marshmallow 6 (15%), Oreo 8.0 (15%), latest version Pie 9.0 (14%), Nougat 7.0 (11%) and Lollipop 5.1 (10%).

However, it is expensive to maintain a real Android device lab due to regular device maintenance costs and constant device upgrades based on new device releases. Therefore, users opt for an Android Emulator online. Test Now on Android Devices.

How does an Android Emulator really work?

An Android Emulator for PC replicates a browser or an Android App, on a defined operating system (like Windows, Mac). It attempts to create virtual hardware conditions of an Android device, which can be used for the purpose of testing and debugging.

There are multiple Android Emulators Online in the market like Andy Emulator, which have their own set of limitations and will never provide a real device environment for bug-free testing.

What are the disadvantages of testing on an Android Emulator?

The top reasons for a user to uninstall an app or exit the website are high memory consumption, battery drainage, inefficient RAM utilization, slow load times. Such major concerns cannot be tested on an Android Emulator since these hardware configurations cannot be mimicked in an emulator.

Online Android Emulators for PC tends to be slow in virtualization, as it only partially mimics the functionality of the software as well as the hardware. Such emulators don’t do justice to the world of testing where testers need to perform regression and end to end testing on Android devices, and not compromise on certain test cases.

Why use Real Device Cloud instead of Android Emulators?

BrowserStack provides instant access to 3000+ real mobile devices and browsers over the cloud. Testing on a Real device cloud can help you to test in real-world scenarios with additional features at your disposal. Thus, common use cases like using natural gestures and camera, battery drain can be tested. Test Now on Android Devices.

BrowserStack also provides an option to integrate with CI/CD tools like TravisCI, Jenkins, TeamCity and more. QA Testers and Developers can collaborate by sharing bugs via our JIRA, GitHub, Trello and Slack integrations.

Источник

Тестирование для мобильных устройств: эмуляторы, симуляторы и удалённая отладка

В давние времена разработки мобильных сайтов и приложений отладка была сложной задачей. Да, можно было заполучить устройство и быстренько проверить работу – но что было делать, если ты обнаруживал баг?

При отсутствии инструментов отладки приходилось полагаться на разные хаки. В целом они сводились к попыткам воспроизвести баг в десктопном браузере и затем отловить его при помощи Chrome Developer Tools или где-то ещё. К примеру, можно было уменьшить размер окна браузера или поменять user agent.

Грубо говоря, эти хаки не работали. Если ты правишь баг на десктопе, ты не уверен, что он исправлен на мобильном устройстве (МУ). Поэтому приходилось постоянно метаться между устройством и десктопом.

Теперь же у нас есть набор инструментов, позволяющих получать осмысленные данные прямо с МУ. Кроме того, можно использовать десктопные инструменты для отладки прямо на МУ.

В этой статье мы разберём несколько эмуляторов и симуляторов, которые позволяют быстро и легко тестировать сайты и приложения. Затем посмотрим на инструменты для удалённой отладки, позволяющие подключаться к МУ.

Эмуляторы и симуляторы

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

Симулятор iOS

Для тестирования яблочных устройств, айфонов и айпадов, есть несколько вариантов. Первый среди них – официальный Apple iOS Simulator, входящий в поставку Xcode. Позволяет тестировать разные комбинации софта и железа – но только на Mac.

Установите и запустите Xcode. Потом ПКМ и выберите «Show Package Contents». Затем пройдите “Contents” → “Applications” → “iPhone Simulator.”

Хотя найти его нелегко, использовать симулятор просто. Откройте Safari в симуляторе и тестируйте свой сайт. Можно переключаться между разными устройствами iPhone и iPad, менять версию iOS, поворачивать устройство и т.п.

Если у вас нету Mac’а, придётся заморачиваться. Можно взять iPadian, симулятор iPad для Windows. Кроме него существует ещё несколько вариантов, в частности онлайновые. Но, честно говоря, они не особенно хороши.

Эмулятор Android

У андроида эмулятор кросс-платформенный. К сожалению, он сложен в настройке.

Для начала, скачайте подборку, включающую Android Development Tools (ADT) для Eclipse и Android software development kit (SDK). Затем следуйте инструкциям по установке, не забудьте кроме настроек по-умолчанию установить и “Intel x86 Emulator Accelerator (HAXM installer)”. Также вам понадобится установить HAXM (IntelHaxm.dmg на Маке и IntelHaxm.exe на PC).

Затем создайте Android virtual device (AVD) для тестируемого устройства. В менеджере AVD есть список готовых устройств в “Device Definitions”. Для начала выберите одно из них и нажмите “Create AVD”

Выберите любой CPU, и поставьте “No skin“ и “Use host GPU”. Теперь можно запускать виртуальное устройство и использовать браузер Android для тестирования.

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

Как альтернативу, можно использовать Manymo – эмулятор, встраиваемый в браузер. Его даже можно встроить в страницу.

Другие симуляторы и эмуляторы:

Удалённое тестирование

Эмуляторы и симуляторы полезны, но не на 100% достоверны. Всегда нужно пытаться проводить тестирование на максимальном количестве реальных устройств.

Но это не означает, что вам нужно их все покупать. Можно воспользоваться услугами сервисов удалённого тестирования, которые предлагают веб-интерфейс для тестирования на удалённых устройствах. Можно будет взаимодействовать с телефоном и видеть его экран.

Для тестирования устройств от Samsung, таких, как Galaxy S5, можно бесплатно воспользоваться услугами Samsung Remote Test Lab – они предоставляют для тестирования большой выбор своих устройств.

Также можно пользоваться ресурсами Keynote Mobile Testing. Они недёшевы, но количество доступных устройств поражает, и некоторыми можно пользоваться бесплатно.

Если вам нужны физические устройства, можно обратиться в Open Device Lab, где есть список ближайших доступных лабораторий тестирования.

Удалённая отладка

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

Инструменты удалённой отладки предоставляют интерфейс для подключения к МУ с десктопа. Таким образом, мы работаем с данными с реальных устройств на мощном десктопном компьютере.

С выходом 6-й версии Apple представила инструмент для отладки МУ через Safari Web Inspector.

Для начала надо разрешить удалённую отладку на устройстве. “Settings” → “Safari” → “Advanced” и разрешить “Web Inspector”

Затем подключите устройство к компьютеру через USB. Потом откройте Safari (версии не ниже 6) и в “Preferences” → “Advanced” выберите “Show Develop menu in menu bar”.

В этом меню вы увидите ваше устройство и несколько страниц с настройками.

На каждой из страниц представлено много инструментов, DOM Inspector и подобные.

Кроме DOM Inspector, iOS’ вы можете использовать:

— временной график для просмотра сетевых запросов, раскладки и рендеринга страниц, работы JavaScript
— отладчик с возможностью установки точек останова
— консоль JavaScript

Как и в случае с симулятором iOS, удалённой отладкой можно заниматься только с Мака.

Android

В случае с Андроидом инструменты удалённой отладки позволяют работать с десктопа при помощи Chrome’s Developer Tools. Кроме того, инструменты эти опять-таки кросс-платформенные.

Сначала, на телефоне пройдите в “Settings” → “About Phone” (для Android 4.4+), или “Settings” → “About Tablet”. Затем нужно нажать на “Build Number” семь раз. Кроме шуток. После этого вы увидите сообщение насчёт разработчика.

Затем обратно в основных настройках “Developer Options” нужен пункт “USB debugging”.

В адресной строке браузера Chrome наберите about:inspect. Разрешите “Discover USB devices”, и вы увидите в меню своё МУ.

Также вы должны увидеть открытые закладки в мобильном браузере. Выберите нужную, и вам будут доступны:

DOM Inspector,
Сетевая панель с внешними ресурсами
Панель исходного кода, для отладки JavaScript
Консоль JavaScript

Подробности можно найти в тьюториале “Introduction to Chrome Developer Tools, Part One.”

Также можно заниматься удалённой отладкой в эмуляторе Андроида.

Weinre

Если вам приходится отлаживать устройство с iOS на Windows, или Linux, или отлаживать устройство, работающее под Windows Phone или BlackBerry – попробуйте Weinre (web inspector remote). Работает везде.

Настройка weinre сложновата, т.к. его надо устанавливать и на сервере, и на странице. Сначала вам понадобится установить Node, а затем установить модуль Weinre:

npm install –g weinre

Затем запустите сервер отладки (подставляем ip-адрес компьютера):

weinre —boundHost 10.0.0.1

Затем проходим на localhost:8080 и копируем содержимое тега . Его нужно будет вставить на отлаживаемую страницу.

Наконец, кликните на ссылке вверху user interface for debugging clients (http://localhost:8080/client/#anonymous). Теперь, когда вы откроете страницу на устройстве, её можно будет увидеть в списке целей (targets).

После этого можно использовать инструменты для отладки.

Weinre позволяет тестировать любое устройство, но он не настолько продвинутый, как родные решения для iOS и Android. К примеру, нельзя пошагово отлаживать JavaScript.

Ещё один вариант удалённого тестирования называется Ghostlab.

Заключение

В этой статье мы научились устраивать тестовую лабораторию при помощи комбинации из реальных устройств, эмуляторов, симуляторов и инструментов удалённого тестирования. С их помощью вы сможете тестировать сайты и приложения на различных МУ.

Также мы познакомились с различными инструментами удалённой отладки, которые открывают доступ к отладочным данным МУ, без которых отладка сильно затруднена.

Что ещё почитать перед сном:

“Mobile Emulators and Simulators: The Ultimate Guide,” Maximiliano Firtman
“Introduction to Chrome Developer Tools, Part One,” Seth Ladd, HTML5 Rocks
“About Safari Web Inspector,” Safari Developer Library, Apple
“Enable Remote Debugging With Safari Web Inspector in iOS 6” Dave Ackerman, Modus Create
“Remote Debugging on Android With Chrome,” Chrome Developer Tools
“Weinre as Remote Debugger,” Mozilla Developer Network

Источник

Читайте также:  Saving file java android
Оцените статью