Наличие интерфейсов implicity проверяется каждый раз, когда вы используете интерфейс в тесте. Например, до того, как интерфейс или какие-либо его реализации существуют, вы можете написать тест, который говорит, в частности:
ICar car = new Convertible();
Это устанавливает существование интерфейса ICar - ваш тест не будет компилироваться, пока не будет создан - и этот Convertible реализует ICar. Каждый метод на автомобиле, который вы вызываете, будет разрабатывать больше интерфейса.