Для любого мобильного приложения производительность очень важна. Если ваше мобильное приложение не работает должным образом, конечный пользователь удалит ваше приложение и найдет другое приложение, которое работает лучше.
Ваше мобильное приложение должно быть тщательно протестировано перед его выпуском конечному пользователю.
В этом уроке вы узнаете
- Стратегия тестирования мобильных приложений
- Производительность устройства
- Производительность сервера
- Производительность сети
- Устранение неполадок с производительностью мобильных приложений
- Полезные инструменты для тестирования мобильных приложений
- проблемы
- Настройка среды тестирования производительности мобильных приложений
- Контрольный список производительности для мобильных приложений
Стратегия тестирования мобильных приложений
Производительность приложений на мобильном телефоне или любом интеллектуальном устройстве обычно измеряется по следующим трем категориям.
- Производительность устройства
- Производительность сервера / API
- Производительность сети
Производительность устройства
Когда клиент испытывает медленное приложение, он раздражается.
Для производительности устройства, вы будете проверять следующее —
- Запуск приложения
Сколько времени занимает запуск вашего приложения? Это первый параметр производительности, объявленный пользователем. Как правило, после того, как пользователь нажмет на значок приложения, первый экран должен появиться через 1-2 секунды.
- Battery Time while using an app
On constant use, some mobile apps, consume a high amount of battery life and heat the phone. This factor adds a lot to the performance of any mobile app and could normally happen when your app is using more resources than required. Excessive resource usage creates a burden on the processor and phone gets heat up.
- Memory Consumption
When Testing an app, the memory consumption by an app should be checked. By implementing certain functionalities in the app, the memory consumption also increases. For example, in Android apps when push notifications are implemented then memory consumption increases.
In some cases, it has been observed that memory usage by whole O.S is mere 14%, but a new app is consuming 11%. So, these factors must be handled before deploying the app to the real world or giving to the client.
- Hardware/Software Variation
When testing a mobile app, it is mandatory to check apps on different devices. It could be the case that app is running smoothly on one device but not on other. Like for different vendors of Android devices, we can check the app on Samsung, HTC, and Lenovo phones. Similarly, the app needs to be tested with different RAM and processor specifications like 1 GB or 2 GB.
- Usage with Other Apps
When the app under test is running in parallel with other apps, there should be no interference. The best way to check it is by switching app under testing and other apps.
- App in background
An app that is running in the background is retrieved, it should remain in the same state as it was before. If this scenario is not handled properly, then data get lost. Again you have to enter data from scratch upon retrieving the app.
Server/API Performance
When the app is interacting with the server via API, the response time becomes critical to performance. For Server performance, you will check —
- Data to and from server
The app should handle data efficiently that is sent from the server. It must not take too much time while loading data. In certain apps, data is sent in a specified format. So before displaying it in the app, it should be converted to a relevant format. In this process, apps sometimes become slower and response time becomes longer.
- API Calls Generated from App
The number of calls from App under test to the server generated from app should be less. In some cases, multiple API calls are made for the same functionality. For better performance, this should be handled with less number of calls.
- Server Down Time
Due to any reason if the server is down or unreachable we can save data in the native database. So, whenever the server is down, we can show data stored in the native database. Another solution could be the failover database servers i.e. if one of the servers is down or in maintenance phase the backup server should be available to switch over. The failover/backup server should be in continuous replication and synchronization with the main server.
Network Performance
The performance of the app on different networks and network properties need to be measured.
For Network performance, you will check following things.
- Jitters
When there is a delay in receiving information on the network, then it is termed as jitters. It is a problem with the connectionless networks or packet switch networks. As the information is distributed into packets, packets can travel by a dissimilar path from the sender to the receiver. When data arrives at the intended location, it becomes scrambled than it was originally sent. In the case of Jitters, the mobile app should be capable enough to handle it.
You need to Show the appropriate notifications to the end user, either to resend the request or wait till the system responds again.
- Packet Loss
In the case of complete packet loss, the app should be able to resend the request for the information or should generate the alerts accordingly. If data is not complete, then the user will not be able to comprehend information displayed in App. This can be stressful for the user. So, it is better to display a suitable message or prompt user to try again.
- Network Speed
The app needs to be checked on a variety of networks with variable speed. The app should be tested on 2.5G, 3G, and 4G networks. Both Wi-Fi and mobile networks are included in this. Also, the behavior of app should be monitored. Especially, when both networks are available, and switching occurred from one network to another.
Например, проблема может возникнуть в приложении для пользователей при переключении телефонной сети с 4G на WIFI и наоборот. В этом случае приложение перестает отвечать на запросы и может потребовать перезапуска приложения для использования.
Устранение неполадок с производительностью мобильных приложений
После обнаружения проблем / проблем во время тестирования производительности . Настало время отследить и исправить ошибки.
Проблема 1) Отставание или вялый ответ мобильного приложения.
Причиной этой задержки может быть ОЗУ, кэш и т. Д.
Вам нужно убить ненужные процессы или очистить кеш. Устранение неполадок с подключением может решить некоторые проблемы, которые создают лаги
Проблема 2) Перезапуск приложения, блокировка, зависание или не отвечает.
Это может быть исправлено некоторыми из следующих шагов
- Оптимизация кодов приложения
- Программное обеспечение должно быть исправлено и обновлено.
- Автоматическое восстановление
- Управление ОЗУ или в некоторых случаях ПЗУ при использовании внешних карт
- Стирание разделов кеша
- Проверка работы приложения с другими сторонними приложениями и API
- Сопоставление мобильного приложения с устройством
Полезные инструменты для тестирования мобильных приложений
Инструменты тестирования мобильных приложений различаются в зависимости от устройства или мобильной ОС. Некоторые распространенные инструменты для тестирования производительности мобильных приложений:
ANDROID
- Robotium
Это как Selenium для мобильных приложений. Тестер может записывать и воспроизводить несколько шагов, необходимых для выполнения тестирования.
- Обезьяна Бегун
MonkeyRunner может запускать тесты на реальных устройствах, подключенных к ПК или эмуляторам. Инструмент имеет API, который позволяет управлять смартфоном, планшетом или эмулятором извне кода Android.
ЯБЛОКО
- Automator (Mac)
Automator — это приложение, разработанное Apple для OS X. Оно реализует создание рабочих процессов по принципу «укажи и щелкни» (или перетаскивай) для автоматизации повторяющихся задач в пакеты для более быстрого изменения. Это экономит время и усилия по сравнению с вмешательством человека, чтобы вручную изменить каждый файл.
проблемы
Ключевые проблемы, с которыми сталкиваются при тестировании производительности, включают
- Организация различных мобильных платформ и их операционных систем
- Имитация соединений, таких как Edge, 3G, 4G или WiFi и т. Д.
- Ограничения мобильных устройств, такие как потребление батареи и ресурсов
- Удобство использования мобильного телефона
- Различные размеры мобильных устройств для запуска одного и того же приложения
Настройка среды тестирования производительности мобильных приложений
Для настройки тестовой среды вам необходимо:
- Понимание мобильного приложения, которое необходимо протестировать
- Определение различных ОС, на которых должно работать приложение
- Сборка тестовой установки
- Сборка эмуляторов или симуляторов
- Прототипирование фактической настройки
- Выбор подходящего инструмента для тестирования
Контрольный список тестирования производительности мобильных приложений
Тестирование производительности мобильных приложений является важной мерой перед выпуском. Тестирование производительности проводится для проверки
- Сколько оперативной памяти требуется для использования этого приложения?
- Чтобы проверить скорость и время отклика приложения в разных сетях и обстоятельствах.
- Обеспечить реалистичное взаимодействие с пользователем в нескольких условиях сети
- Убедитесь, что требуемые результаты достигаются в случае нескольких подключений
- Убедитесь, что приложение не потерпело крах.
- Обеспечение хорошей работы мобильных приложений при использовании данных, Wi-Fi или других подключений
- Мониторинг работоспособности и узких мест использования мобильного API
- Для обеспечения максимального количества одновременных пользователей
- Наконец, чтобы проверить мобильное приложение до его пределов
Резюме
- Тестирование производительности требует понимания мобильного приложения, утилиты использования ресурсов, виртуальных пользователей, эмуляторов и нескольких стратегий тестирования.
- Производительность приложения на мобильном телефоне измеряется в следующих трех категориях.
- Производительность устройства
- Производительность сервера
- Производительность сети
- Проблемы тестирования производительности включают компактные размеры мобильных устройств, доступность ресурсов, стоимость и бюджетирование.
Эта статья предоставлена Ношин Ваджахат