Файл: Тестирование производительности программ: подходы в зависимости от категорий приложений.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 31.03.2023

Просмотров: 193

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Стресс тестирование:

Используя указанные выше фреймворки мы так же можем эмулировать "стрессовое" состояние приложение, такие как:

1) Введение заведомо превышающих возможную точность стандартных типов dart чисел, в том числе с плавающей точкой.

2) Выполнение заведомо неверных операций, включая, но не ограничивающиеся, делением на 0, математические операции вызывающие исключения и операции, которые не могут быть выполнены используя текущую математическую библиотеку, используемую в приложении.

3) По желанию, эмуляция, допустим, тысячи операций в секунду, просто чтобы гарантировать что наше приложение способно справится с нагрузкой от самых быстрых наших пользователей.

Как следствие, с помощью этого тестирования мы стараемся отсечь граничные ситуации, которые могут привести к падению нашего приложения.

Тестирование на стабильность:

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

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

Тестирование на проникновение:

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

В случае, если приложение реализовано некорректно, в случае попадания apk к злоумышленнику, он через деобфускацию получит доступ к токену для логина и как следствие получит доступ уже к админке сайта.

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

В этом случае автоматизированное тестирование может быть выполнено с помощью DeGuard (https://apk-deguard.com/) и написания самостоятельных тестов с помощью вашего любимого языка.

Вывод:

В данной работе были рассмотрены стандартные подходы для тестирования производительности приложений для двух категорий: клиент серверное на примере веб сервиса и клиентское приложение на примере мобильного калькулятора для Android,

Так же данные подходы к тестированию приложений подходят ко всем остальным подкатегориям (мобильные игры, тонкие клиенты, операционные системы, драйвера и т.п.) при смене некоторых утилит.