Чтобы начать реализацию любой методики тестирования, будь то традиционный или какой-то новый подход, необходимо понять суть конкретного метода. Скорее всего, вы уже слышали о тестировании SaaS. SaaS (программное обеспечение как услуга), PaaS (платформа как услуга) и IaaS (инфраструктура как сервис) — 3 модели «облачных» вычислений.
В этой статье мы попытаемся ответить на несколько базовых вопросов, которые относятся к такой форме тестирования, как SaaS.
Содержание
Что такое SaaS?
SaaS (или программное обеспечение как услуга) доступен клиентам через интернет и помогает организациям обходить сложности, сопряженные с установкой ПО на компьютеры.
Что такое тестирование SaaS?
Платформа для тестирования SaaS — метод обеспечения качества ПО за счет всевозможных проверок, включая тестирование производительности , безопасности, интеграции данных, масштабируемости, надежности и прочего. Cisco Web Ex, Google Apps — известные примеры SaaS-приложений, которые доступны посредством сети и не требуют дополнительной установки.
Причины использовать тестирование SaaS-приложений:
- Большая надежность, масштабируемость и доступность
- Сокращение расходов на установку и обслуживание ПО
- Быстрое устранение ошибок
- Быстрое размещение ПО
- Плата за пользование
- Взаимозависимости системы минимизируются на нескольких уровнях
- Обновляются SaaS-системы достаточно просто.
Считается, что проводить SaaS-тестирование сложнее, чем традиционное тестирование:
- Программные продукты разрабатываются намного быстрее, поэтому на первый план выходит обеспечение качества
- Необходимы знания и опыт в данной сфере, чтобы работать с изменяемыми и неизменяемыми компонентами SaaS-приложений
- Среда тестирования должна поддерживать автоматические размещение и валидацию приложения
Преимущества SaaS-тестирования перед тестированием других систем:
- Ниже расходы на обслуживание и обновление приложений
- Меньше риска, больше внимания к новым, инновационным идеям
- Плата за пользование
- Удобный доступ через интернет, без какой-либо установки ПО
Лучшие практики по SaaS
- У бизнес-организации должна быть причина, чтобы использовать SaaS
- Понимание бизнеса — это главное требование, а равно и постановка целей на ранних этапах
- У компании должен быть IT-специалист во избежание сложных ситуаций
- Условия соглашения об уровне обслуживания должны быть четко прописаны и понятны перед подписанием контракта
- Необходимо планирование аварийного восстановления, чтобы аварийная ситуация не вынудила отказаться от приложения
Наряду со всем вышеперечисленным, существуют и другие факторы, которые необходимо принимать во внимание.
Методология SaaS-тестирования
При SaaS-тестировании используются методы, которые обеспечивают надежную работу приложения, созданного для этой модели.
Приложения, инфраструктура и сеть считаются ключевыми компонентами SaaS-тестирования. В фокусе такого подхода несколько областей.
- Тестирование по стратегии белого и черного ящика как часть модульного тестирования
- Функциональное тестирование для тщательной проверки соответствия приложения требованиям
- Интеграционное тестирование проводится для проверки интеграции SaaS-системы с другими
- Исследовательское тестирование для новых тест-кейсов
- Тестирование безопасности сети, различных угроз, интеграции и доступности
- Обеспечение качества соединения SaaS, а также тестирование пользовательского интерфейса, с акцентом на портативность и компактность
- Для любого обновления, релиза или переноса данных в приложении используется регрессионное тестирование
- Тестирование надежности производится с целью снизить вероятность ошибок
- Проводятся всевозможные тесты для проверки безопасности сети
- SaaS-приложения призваны работать при высокой нагрузке, необходимо тестирование работоспособности и масштабируемости, чтобы проверить, как ведет себя приложение при пиковой нагрузке в разных условиях
- Проверяется совместимость приложения, с доступом на разных браузерах
- Когда добавляются новые функциональные особенности или обновляются старые, проводится продолжительное тестирование этих обновлений
- Тестирование API проводится, чтобы проверить функциональность, безопасность
- Клиентские запросы, платежи и биллинг — составляющие этапы тестирования в реальных условиях
Особняком стоит вопрос безопасности, потому что клиенты получают доступ к Saas-системам через интернет. Но даже несмотря на это, многие компании предпочитают работать с SaaS.
Сложности, связанные с тестированием SaaS-приложений
- Частые обновления и релизы оставляют мало времени на проверку валидности и безопасности приложений
- Порой компоненты бекенда, связанные с пользовательским интерфейсом приложения, остаются без проверки
- Обеспечение безопасности данных и предотвращение утечек данных
- Важно определить самые доступные зоны и провести пользовательское тестирование с участием как можно большего числа людей из разных мест
- Во время интеграции и переноса SaaS-приложений нередко возникают сложности с сохранением данных тестирования
- Для новых релизов проверяются все аспекты, относящиеся к лицензированию, в т.ч. количество пользователей и функциональность приложения
- Отсутствие стандартизации приложения
Как справиться со всеми этими сложностями:
- Используйте скрипты для автоматизации, чтобы устранить сложности, связанные с частыми обновлениями
- Определите зоны, к которым пользователи получают доступ чаще — это поможет с тестированием производительности когда времени мало
- Для безопасности данных SaaS-приложений рекомендуется использовать шифрование данных во время интеграции
Популярность SaaS-приложений с каждым днем растет, а отсюда и необходимость в их тестировании, которое бы обеспечивало высокие стандарты качества.
Лучшие практики тестирования SaaS-приложений
- Стоит использовать мощное аппаратное обеспечение, чтобы определить производительность приложения в работе с дополнительными ресурсами
- Понадобятся полный список требований по тестированию, необходимых для SaaS-приложений
- Чтобы протестировать производительность, время от времени повышайте нагрузку — добавляйте пользователей из другого окружения
- Лучше заранее составить тест-план, сразу же, когда получены требования относительно спецификаций
По сравнению с традиционными методами для модели SaaS нужно меньше времени, чтобы осуществить и завершить методологии тестирования.
Инструменты для SaaS-тестирования
#1) PractiTest
Этот инструмент тестирования разработан для того, чтобы обеспечить клиентов комплексными тестовыми решениями и предоставить рычаги контроля для процесса разработки приложений и тестирования.
Особенности инструмента:
- Обеспечение коммуникации на разных уровнях
- Средства управления проектом, общим процессом тестирования
- В любое время можно узнать статус проекта
#2) qTest
Этот облачный инструмент для управления тестированием, который упрощает коммуникации.
Основные особенности инструмента:
- Простота взаимодействия с участниками команды
- Предусмотрена функция создания заметок, детализированные отчеты о дефектах
- Доступна пробная версия
- Инструмент позволяет планировать и составлять график проекта, документацию по тест-кейсам, отчетам и результатам
- Есть удобная приборная доска, на которой отображается достигнутый прогресс, запросы и полезные отчеты.
#3) QMetry
Инструмент позволяет связать требования проекта с его тест-кейсами и дефектами.
Особенности:
- QMetry удобен в условиях быстро меняющихся требований, позволяет использовать старые тест-кейсы
- Результаты и статус тест-кейсов могут быть зафиксированы во время выполнения тест-кейсов
- Страница выполнения доступна для редактуры тест-кейсов в режиме реального времени
- Управление дефектами с помощью ссылки
- Все дефекты, зафиксированные во время прошлых тестов, можно легко обнаружить, так один и тот же дефект не будет записан дважды