Тестване на производителността на мобилно приложение
⚡ Умно обобщение
Тестването на производителността на мобилните приложения измерва колко бързо се стартира дадено приложение, колко батерия и памет изразходва, колко бързо реагират неговите API и колко грациозно се държи в ненадеждни мрежи.
За всяко мобилно приложение производителността е много важна. Ако мобилното ви приложение не се представя добре, крайният потребител ще го деинсталира и ще намери друго приложение, което се представя по-добре.
Вашето мобилно приложение трябва да бъде тествано щателно, преди да го пуснете на краен потребител.
Стратегия за тестване на мобилни приложения
Ефективността на приложението на мобилен телефон или друго смарт устройство обикновено се измерва в следните три категории.
- Ефективност на устройството
- Производителност на сървър/API
- Производителност на мрежата
Диаграмата по-долу съпоставя тези три слоя с техните проверки.
Ефективност на устройството
Когато клиентът изпитва бавно приложение, той се дразни.
За производителността на устройството ще проверите следното:
- Стартиране на приложението: Колко време отнема вашето приложение, за да стартира? Това е първият параметър за производителност, определен от потребителя. Като правило, след като потребителят докосне иконата на приложението, първият екран трябва да се покаже след 1-2 секунди.
- Време на батерията при използване на приложение: При постоянна употреба някои мобилни приложения изразходват голямо количество батерия и прегряват телефона. Това обикновено се случва, когато приложението ви използва повече ресурси от необходимото, което създава натоварване на процесора.
- Консумация на памет: Кога Тестване приложение, потреблението на памет от приложението трябва да се провери. Чрез прилагането на определени функционалности в приложението, потреблението на памет също се увеличава. Например в Android приложения, когато са внедрени насочени известия, потреблението на памет се увеличава.
В някои случаи се наблюдава, че използването на паметта от цялата операционна система е само 14%, но ново приложение консумира 11%. Така че тези фактори трябва да бъдат обработени, преди да разгърнете приложението в реалния свят или да го дадете на клиента.
- Вариация на хардуера/софтуера: Когато тествате мобилно приложение, е задължително да проверите приложенията на различни устройства. Може да се окаже, че приложението работи гладко на едно устройство, но не и на друго. Като за различни доставчици на Android устройства, можем да проверим приложението на телефони Samsung, HTC и Lenovo. По същия начин приложението трябва да бъде тествано с различни спецификации на RAM и процесор, като 1 GB или 2 GB.
- Употреба с други приложения: Когато тестваното приложение работи паралелно с други приложения, не трябва да има смущения. Най-добрият начин да го проверите е като превключите тестваното приложение с други приложения.
- Приложение във фонов режим: Когато приложение, работещо във фонов режим, бъде извлечено, то трябва да остане в същото състояние, в което е било преди. Ако този сценарий не се обработи правилно, данните се губят. Свързаните случаи от жизнения цикъл са разгледани в тестване на прекъсвания.
Производителност на сървър/API
Когато приложението взаимодейства със сървъра чрез API, времето за реакция става критично за производителността. За производителността на сървъра ще проверите:
- Данни към и от сървъра: Приложението трябва да обработва ефективно данните, изпратени от сървъра. Зареждането на данните не трябва да отнема твърде много време. В някои приложения данните се изпращат в определен формат, така че преди да бъдат показани в приложението, те трябва да бъдат конвертирани в подходящ формат. В този процес приложенията понякога стават по-бавни и времето за реакция се удължава.
- API повиквания, генерирани от приложението: Броят на обажданията от тестваното приложение към сървъра, генериран от приложението, трябва да бъде по-малък. В някои случаи се правят множество извиквания на API за една и съща функционалност. За по-добра производителност, това трябва да се направи с по-малко обаждания.
- Време на престой на сървъра: Поради някаква причина, ако сървърът не работи или е недостъпен, можем да запазим данните в основната база данни. Така че, когато сървърът не работи, можем да покажем данните, съхранени в основната база данни. Друго решение биха могли да бъдат резервните сървъри за бази данни, т.е. ако един от сървърите не работи или е във фаза на поддръжка, резервният сървър трябва да е наличен за превключване. Резервният сървър трябва да е в непрекъсната репликация и синхронизация с основния сървър.
Производителност на мрежата
Ефективността на приложението в различни мрежи и свойства на мрежата трябва да бъдат измерени.
За производителност на мрежата ще проверите следните неща.
- Тревога: Когато има забавяне при получаване на информация в мрежата, то се нарича трептене. Това е проблем с мрежите без връзка или мрежите за превключване на пакети. Тъй като информацията се разпределя в пакети, пакетите могат да пътуват по различен път от изпращача до получателя. Когато данните пристигнат на предвиденото място, те стават кодирани, отколкото са били първоначално изпратени. В случай на трептене, мобилното приложение трябва да е достатъчно способно да се справи с него.
Трябва да покажете съответните известия на крайния потребител, или да изпрати заявката отново, или да изчака системата да отговори отново.
- Изгубен пакет: В случай на пълна загуба на пакет, приложението трябва да може да изпрати отново заявката за информация или съответно да генерира предупреждения. Ако данните не са пълни, тогава потребителят няма да може да разбере информацията, показана в приложението. Това може да бъде стресиращо за потребителя. Затова е по-добре да покажете подходящо съобщение или да подканите потребителя да опита отново.
- Скорост на мрежата: Приложението трябва да бъде тествано в различни мрежи с променлива скорост. То трябва да бъде тествано в 3G, 4G и 5G мрежи. Включени са както Wi-Fi, така и мобилни мрежи. Също така, поведението на приложението трябва да се следи, особено когато и двете мрежи са налични и е извършено превключване от една мрежа към друга.
Например, може да възникне проблем в приложение за потребителите при превключване на телефонната мрежа от 4G към Wi-Fi и обратно. В този случай приложението престава да реагира и може да се наложи рестартирането му за употреба.
Отстраняване на проблеми с производителността на мобилните приложения
След откриване на проблемите/проблемите, докато Тестване на производителносттаВреме е да tracд и коригиране на грешките.
Проблем 1) Забавяне или бавен отговор на мобилното приложение.
Причината за това забавяне може да е RAM, кеш и др.
Трябва да убиете ненужните процеси или да изчистите кеша. Отстраняването на проблема със свързаността може да разреши някои от проблемите, които създават забавяния
Проблем 2) Рестартиране на приложението, заключване, замразяване или липса на реакция.
Може да се коригира чрез някои от следните стъпки
- Оптимизиране на кодовете на приложението
- Софтуерът трябва да бъде закърпен и актуализиран.
- Автоматични възстановявания
- Управление на RAM или в някои случаи ROM при използване на външни карти
- Wiping разделянето на кеша
- Проверка на приложението дали работи с други приложения и API на трети страни
- Картаping мобилното приложение според устройството
Полезни инструменти за тестване на мобилни приложения
Инструменти за тестване на мобилни приложения варират според устройствата или мобилната операционна система. Някои често срещани инструменти за тестване на производителността на мобилни приложения са
ANDROID
- Robotium То е точно като Selenium за мобилни приложения. Тестерът може да записва и възпроизвежда няколко стъпки, които са необходими за извършване на тестване.
- Маймуна бегач MonkeyRunner може да провежда тестове на реални устройства, свързани към компютър или емулатори. Инструментът има API, който позволява управление на смартфон, таблет или емулатор отвън Android код.
⚠️ Бележка към версията: И двете Android записите са наследени. Robotium не е издаван от 2016 г. и Google маркира MonkeyRunner като неподдържан, насочвайки екипите към UI Automator и неговите uiautomatorviewer инспектор вместо това.
APPLE
- Автоматизатор (Mac) Automator е приложение, разработено от Apple за macOSТой реализира създаване на работни потоци с кликване и щракване (или плъзгане и пускане) за автоматизиране на повтарящи се задачи в партиди за по-бърза промяна. Това спестява време и усилия в сравнение с човешката намеса за ръчна промяна на всеки файл поотделно.
Предизвикателства
Основните предизвикателства, с които се сблъскват по време на тестването на производителността, включват
- Организиране на различни мобилни платформи и техните операционни системи
- Симулиране на свързаност като 3G, 4G, 5G или Wi-Fi и др.
- Ограничения на мобилните устройства като консумация на батерия и ресурси
- Използваемост на мобилния телефон
- Различните размери на мобилни устройства за стартиране на едно и също приложение
Настройте среда за тестване на ефективността на мобилно приложение
За да конфигурирате тестовата среда, трябва да-
- Разбиране на мобилното приложение, което трябва да бъде тествано
- Идентифициране на различни операционни системи, на които приложението трябва да работи
- Изграждане на тестовата настройка
- Създайте емулатори или симулатори
- Прототиping на действителната настройка
- Избор на подходящия инструмент за тестване
Контролен списък за тестване на ефективността на мобилното приложение
Тестването на ефективността на мобилните приложения е важна мярка преди пускането им. Извършва се тестване на производителността, за да се провери
- Колко RAM е необходима за използване на това приложение?
- За проверка на скоростта и времето за реакция на APP при различни мрежи и обстоятелства.
- Осигурете реалистично потребителско изживяване при няколко мрежови условия
- Уверете се, че са постигнати необходимите резултати в случай на множество връзки
- Уверете се, че приложението не се срива.
- Осигуряване на добра работа на мобилните приложения при използване на данни, Wi-Fi или друга свързаност
- Наблюдение на времето за работа и тесните места при използването на мобилния API
- За осигуряване на максимален брой едновременни потребители
- И накрая, за да проверите мобилното приложение до неговите граници

