Я занимаюсь модульным тестированием класса со свойством, значение которого часто меняется, в зависимости от связи, которую он получает от другого компонента. Если класс не получает никаких сообщений в течение 5 секунд, свойство возвращается к значению по умолчанию.
Мне легко заглушить и смоделировать коммуникационный компонент, чтобы вызвать значения, для которых я хочу проверить. Проблема заключается в том, что если я запускаю свои модульные тесты на машине, которая занята (например, на машине сборки), и имеется достаточно значительная задержка, чтобы заставить свойство по умолчанию работать, тогда мой модульный тест не пройдёт.
Как бы вы проверили, чтобы убедиться, что это свойство имеет правильное значение при моделировании различных условий связи?
Одна идея состоит в том, чтобы реструктурировать мой код, чтобы я мог заглушить ту часть класса, которая контролирует время ожидания. Другой - написать мой модульный тест таким образом, чтобы он мог определить, не прошел ли он из-за тайм-аута, и указать это в результатах теста.