Оглавление:
Определение - Что означает случайное тестирование?
Случайное тестирование относится к практике использования случайных входов для тестирования программного обеспечения. Различные виды случайного тестирования основаны на одной и той же основной идее, а именно, что варианты реализации теста выбираются случайным образом.
Техопедия объясняет случайное тестирование
Случайное тестирование - это тип «черного ящика», в котором разработчики не смотрят на внутренний код программного продукта - вместо этого они вводят случайные входные данные в систему, чтобы посмотреть, каковы результаты. Одним из распространенных примеров является использование случайных целых чисел для проверки программной функции, которая возвращает результаты на основе этих целых чисел. Эти функции могут включать в себя «циклы for» или другие алгоритмы для выдачи результата, где набор случайных тестовых случаев моделирует или аппроксимирует более широкий набор случаев, введенных теоретическими пользователями.
Другие виды случайного тестирования могут включать использование эвристики, которая управляет использованием случайных входных данных. В целом, и особенно при работе с целыми числами или другими типами переменных, случайное тестирование является настолько же случайным, что и набор используемых случайных входных данных - иными словами, тестеры часто предпочитают использовать ограниченный набор целых чисел, а не бесконечный устанавливать. Специальные методы случайного тестирования вбирают в себя механику того, что мы подразумеваем под случайным, и как разработчики предлагают, казалось бы, случайный набор входных данных для теста.
Обсуждения случайного тестирования также могут вращаться вокруг эффективности его использования. Одна идея заключается в том, что поскольку произвольное тестирование может выполняться автоматизированными системами, а не специалистами-людьми, оно может иметь преимущества по сравнению с направленным тестированием. Тем не менее, направленное тестирование может быть более эффективным с точки зрения объема необходимого тестирования. Некоторые разработчики и эксперты также используют термин «случайное тестирование» для обозначения неэффективного или даже некомпетентного тестирования, где направленное тестирование рассматривается как превосходящий метод.