Мне нужно написать модульные тесты для методов, которые сжимают и распаковывают объект ArraySegment
. Внутри этих методов есть много странных методов, которые мне не нужно понимать. (Они также используют некоторые системные методы - я не знаю их реализации).
Проблема заключается в том, как на самом деле проверять такие вещи. Я мог проверить, какой результат для метода сжатия для конкретного ввода - Lorem ipsum dolor sit amet, consectetur adipisicing elit.
- и создайте тестовый пример на основе этого эксперимента, но это решение не проверяет какие-либо граничные случаи.
Я мог бы также проверить, делает ли компрессия, а затем декомпрессию на некоторой последовательности, дает мне первую входную последовательность, но это не будет чистым модульным тестом.
Вы когда-нибудь сталкивались с такой проблемой? Есть ли хорошее решение для этого?
Я периодически пишу тесты. Написание тестов для кода, который обертывает шифрование, работает аналогичным образом.
Вы не можете высмеивать или заглушать код, который вы не полностью понимаете (например, код, результаты которого вы не можете точно предсказать), поэтому не беспокойтесь о том, чтобы писать чистые модульные тесты.