Sì. In primo luogo, dimenticando il test delle unità come motivo per progettare il codice attorno agli strumenti di test delle unità, non è mai una buona idea piegare la progettazione del codice per adattarla a un vincolo artificiale. Se i tuoi strumenti ti costringono a farlo, ottieni strumenti migliori (ad esempio Microsoft Fakes / Moles che ti consentono molte più opzioni per la creazione di oggetti mock).
Ad esempio, divideresti i tuoi corsi in metodi solo pubblici solo perché gli strumenti di test non funzionano con metodi privati? (So che la saggezza prevalente è fingere che non sia necessario testare metodi privati, ma ritengo che questa sia una reazione alla difficoltà nel farlo con gli strumenti attuali, non una reazione genuina a non dover testare i privati).,
Tutto sommato si tratta di che tipo di TDDer sei - il "mockist" come Fowler descrive s loro , è necessario cambiare il codice per adattarsi agli strumenti che usano, mentre i tester "classici" creano test che sono più di integrazione (cioè test la classe come unità, non ogni metodo), quindi c'è meno bisogno di interfacce, specialmente se usi gli strumenti che possono prendere in giro lezioni concrete.