Тестирование ПОМы обеспечиваем организацию полного цикла тестирования ПО:
- Ручное тестирование
- Автоматизированное тестирование
- Нагрузочное тестирование
Последующий функциональный мониторинга работоспособности информационных систем.
Мы готовы сформировать команду специалистов под разовые или периодические работы по тестированию в т.ч. на условиях аутстаффинга.
Для компаний, которые не занимаются постоянной разработкой и совершенствованием своих продуктов оптимальной будет проектная модель работы с нами, когда мы сформируем команду под конкретный объем и сроки проекта.
Если же продукт или информация в немо постоянно изменяется и требуется много оперативных доработок и изменений – мы можем предложить модель аутстаффинга, когда выделенная проектная команда будет работать под управлением лидеров проекта со стороны заказчика.
Ручное тестированиеКак правило работа строится по методологии Agile с периодическим планированием работ, регулярной отчётностью, контролем качества.
Мы можем работать как в трекинговых системах заказчика, так и в собственной системе контроля задач.
Ручное тестирование приложений – это процесс проверки функциональности, удобства использования и качества программного обеспечения без использования автоматизированных инструментов. Тестировщик вручную выполняет различные сценарии использования приложения, чтобы выявить ошибки, несоответствия требованиям или другие проблемы. Вот ключевые особенности этого подхода:
При ручном тестировании наши специалисты знакомятся с интерфейсом и особенностями функционирования системы заказчика, реализованными в ней бизнес-процессами и ролевой моделью
В месте с этим мы изучаем подходы к разработке/модификации/сопровождения системы. Наличие сред/стендов разработки и предварительного тестирования. Политику ремизного цикла, принципы оформления баг-репортов, тест-кейсов. А также характер взаимодействия со смежными командами.
Ручное тестирование незаменимо для прогнозирования отклика системы на действия пользователей, проверку корректности отображения информации на различных устройствах, удобство использования системы.
Несмотря на широкое применение средств автоматизации в тестировании креативность и нестандартные пути выполнения задач человеком позволяют существенно повысить качество итогового продукта. Ручное тестирование необходимо при внедрении новой функциональности продукта, изменении интерфейса, в целом формирования перечня тест-кейсов для автоматизации.
Также ручное тестирование оптимально в сложных для автоматизации сценариях, при взаимодействии нескольких информационных систем, различных принципов обработки данных. Там, где автоматизация или излишне сложна или не целесообразно.
Очень эффективно проводить ручное тестирование для комплексных и сложных регрессионных сценариев, когда опыт персонала играет ключевую роль в оперативности принятий решений о целесообразности выпуска новой версии продукта в промышленное использование.
Быстрые и устоявшиеся коммуникации между командами разработки и тестирования существенно сокращают время исправления ошибок и дефектов, что в целом способствует повышению качества продукта.
Автоматизированное тестированиеОдним из направлений нашей работы является разработка тестов/сценариев автоматизированного тестирования.
Как правило такая автоматизация нужна для оценки корректности работы стабильной части информационной системы при ее модификациях.
Наиболее актуальна автоматизация тестирования при проведении регрессионных проверок, когда специалисты, запуская автотесты, фокусируются лишь на дополнительных проверках выявленных ошибок.
В результате львиная доля времени, которое могло бы быть затрачено на очередные проверки уже работающего функционала высвобождается, а, значит, процесс тестирования и вывода ращения в промышленную эксплуатацию оптимизируется.
Для разработки автотестов мы используем следующие подходы:
·разработка скриптов на языках Pyton, Java;
·использование фреймворка Selenium
·использование средств автоматизации на базе RPA (Primo RPA, Робин, UIpath, PIX)
Нагрузочное тестированиеВ случае, если предполагается использование информационной системой одновременно большим числом пользователей, целесообразно предварительно провести процедуру нагрузочного тестирования.
Корректно разработанный тест-план и стратегия нагрузочного тестирования, грамотно составленный тест-кейсы позволят убедиться в том, какую нагрузку выдержит система, где могут быть «узкие места» до вывода в промышленную эксплуатацию нового функционала.
При этом реализуются 2 подхода:
- стрессовое тестирование (когда нагрузка увеличивается согласно профилю постепенно) для оценки потенциальной работоспособности системы в уже заданной конфигурации аппаратных и системных ресурсов для максимально возможного числа пользователей. Это удобно для проверки уже действующих систем и контроля их соответствия показателям назначения, а также для планирования апгерйдов.
- профилированное нагрузочное тестирование. Когда предварительно на основе экспертных оценок или имеющегося опыта формируется профили подачи нагрузки и замеряются времена отклика системы или ее компонентов.
Далее строится экстраполяционная модель поведения системы в расчете на плановое число пользователей и, либо производится реинжиниринг системы, ее кода, конфигурации, либо определяется оптимальная конфигурация аппаратных ресурсов под ожидаемую производительность.
И для авторизированного и, особенно, для нагрузочного тестирования обязательным является настройка сбора метрик о доступности и производительности с компонентов инфраструктуры системы.
Только там можно обосновано оценить адекватность общесистемных требований для работы системы или спланировать их изменение.
ВыводДля качественной работы любой информационной системы, ориентированной на использование большим числом пользователей крайне важно организовать не зависимый от разработчиков контроль качества выпускаемых версий.
Наша компания может предложить заказчикам полный спектр услуг по тестированию продуктов и решений от небольших инсталляций до систем федерального уровня.