Полный автоматизированный цикл тестирования

Полный автоматизированный цикл тестирования

16 мая 2008

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

Реализован цикл полного автоматизированного тестирования:

  • последовательная проверка приложения для выявления грубых ошибок и подтверждения работоспособности программы;
  • контроль функционирования элементов (юнитов) в соответствии с параметрами;
  • корректное взаимодействие компонентов и системы.

Автоматизация охватывает максимальный объем ручного тестирования.

  • Снижается человеческое участие в повторяющихся операциях (конфигурационный файл задает число повторений).
  • Замещается дорогостоящий человеческий труд.
  • Из цикла исключаются дублирующие задания.

Создано тестовое окружение, ежедневно проверяющее требования к ПО в изменяющейся конфигурации. Автоматизированы:

  • проверка функционирования процессов обработки данных;
  • инициация ошибок в системе и анализ последствий;
  • контроль согласованности реагирования на ошибки;
  • измерение конфигураций и окружения;
  • оценка производительности и нагрузки.

Положительные стороны автоматизации:

  • надежность проверки и устранение человеческого фактора;
  • повторение задачи произвольное число раз;
  • высокая скорость процесса и параллельное выполнение задач;
  • работа ночью;
  • экономия издержек;
  • наглядная презентация результатов тестов.

Софтверная компания

Тестирование отказоустойчивых серверных компонентов

Разработка пакета утилит для автоматизированного тестирования программного обеспечения с целью обеспечения максимального уровня качества и отказоустойчивости критических компонентов системы. Проект включал разработку полного цикла тестирования: от создания плана проверки до реализации модульных и нагрузочных тестов. Организовано автоматизированное окружение на испытательном стенде, производящее ежедневную сборку и ночную прогонку тестов. Автоматическая диагностика графического интерфейса путем имитации действий пользователя. Специалисты по качеству софта получают ежедневный отчет о дефектах при разработке программного обеспечения. Основное внимание уделено созданию автоматических модульных нагрузочных, оценочных тестов для SDK. При разработке тестов модульному тестированию подвергается весь код. Дополнительная проверка на утечки памяти и системных ресурсов.

Интернет-аукцион

Тестирование безопасности методом проникновения

Проект для стартующего австралийского Интернет-аукциона. Проверка и обеспечение безопасности.

  • Критический просмотр кода на наличие «заднего хода».
  • Устранение и тестирование уязвимостей компонентов.
  • Проверка хостинга, в том числе нагрузочная, DoS, тест портов.
  • Санкционированная попытка взлома и проникновения.

Сеть игровых автоматов

Доработка казино на C++, Python, Django, SQL, Linux

Получена игровая система для локальной сети в исходниках.

  • Анализ чужого кода.
  • Закрытие лазеек для обмана статистики из клиента.
  • Разработка аналитики результатов игр в режиме реального времени.
  • Устранение ошибок и зависаний.