Что такое Volume Testing (тестирование объёма данных)?

«Что такое Volume Testing (тестирование объёма данных)?» — вопрос из категории Тестирование производительности, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Volume Testing — это вид нефункционального тестирования, который проверяет, как система работает с большими объёмами данных. Основная цель — выявить проблемы с производительностью, потреблением памяти и стабильностью при длительной обработке значительных массивов информации.

Пример сценария для базы данных:

-- Наполнение таблицы миллионом записей для теста
INSERT INTO transaction_log (user_id, amount, timestamp)
SELECT 
    (random() * 10000)::int, 
    (random() * 1000)::numeric(10,2), 
    now() - (n || ' seconds')::interval
FROM generate_series(1, 1000000) AS n;
-- Последующие запросы к этой большой таблице
SELECT COUNT(*) FROM transaction_log WHERE amount > 500;

Ключевые проверки:

  • Время отклика запросов к базе данных с миллионами строк.
  • Использование ресурсов: рост потребления оперативной памяти и дискового I/O.
  • Стабильность: отсутствие утечек памяти или сбоев после длительной работы с большими данными.
  • Логика приложения: корректность работы функций (поиск, сортировка, агрегация) на полном объёме данных.

Отличие от Load Testing: Нагрузочное тестирование (Load) фокусируется на количестве одновременных пользователей, в то время как Volume Testing — на объёме данных, с которыми работает один или несколько пользователей.