Чтобы проверить, содержит ли реализация некоторые ограничения (например, количество сравнений, производительность и т. Д.), Вы можете изменить эти ограничения с помощью тестов.
Я нашел этот разговор в Твиттере очень проницательным: http://twitoaster.com/kentbeck/brunopedroso-i-think-you-could-tdd-quicksort-youd-need-assertions-about-the-of-comparisons-ways-to-incrementally-improve-the-count/
Это говорит об этой идее: быстрая сортировка TDD.Мы знаем, что быстрая сортировка быстрее, чем пузырьковая.Оба алгоритма будут выдавать один и тот же результат (отсортированный набор), но они имеют разные ограничения .
Таким образом, вы явно добавляете ограничения вашего алгоритма в свои тесты (вам, очевидно, нужно проверить,ваш алгоритм делает то, что вы ожидаете).
Я согласен, что в этом примере вы говорите что-то, что уже знаете ответ.Однако, если вам нужно найти сложный алгоритм, вы, вероятно, не собираетесь использовать его полностью.Но тесты тестов и ограничений помогут вам узнать, нашли ли вы ответ или нет.