Quando scrivo test, preferisco un commento per il test, seguito da un nome descrittivo del metodo di test (come il formato S/S/R menzionato nei commenti di un'altra risposta) perché è un'abitudine che i miei colleghi sviluppatori e io abbiamo in quando abbiamo iniziato con CPPUNIT con C++. Come mi diletto in C#, il punto menzionato da Lucas nella sua risposta è buono - quando il framework lo consente, il campo descrizione che può essere usato nel codice sorgente E risultati è molto utile, e io preferirei un commento formato che è utilizzabile in molti posti come quello.
Tutto ciò detto, penso che sia necessario considerare come il proprio team di sviluppo gestisce in genere i commenti di codice. La gente è nell'oscillazione generale in cui aggiornano i commenti quando il codice è riparato, refactored? Il progetto è più piccolo e avrà sempre gli stessi pochi sviluppatori che lavorano a stretto contatto?
I progetti su cui lavoro sono di dimensioni maggiori e, a seconda dello stato, possono essere gestiti da un team a stretto contatto, un team remoto o co-sviluppato o completamente consegnato a un fornitore. Nei miei scenari, cerchiamo di dedicare il tempo necessario per documentare e conservare la documentazione in produzione e codice di test per coloro che verranno in futuro.
Se i commenti sono di solito un ripensamento, per quanto possa darmi fastidio, se c'è una possibilità che i tuoi commenti non siano aggiornati con il codice/test effettivi, potrebbe non avere senso tentare di cambiare lo status quo.
A proposito, credo che tutto il codice dovrebbe mirare ad essere auto-descrittivo e avere commenti solo dove non sei riuscito a ottenere il codice per raccontare l'intera storia. I test unitari lo rendono più pronunciato (perché il codice di test unitario è in genere più semplice). –