Come posso convincere il mio collega a testare il suo codice? [duplicare]

1

Negli ultimi due mesi ho cercato di convincere uno dei miei colleghi a iniziare l'unità testando il suo codice e abbandonare il vecchio modo di "stampare, eseguire, eseguire il debug" delle cose. Ho bisogno di prove chiare ed elaborate che i test unitari aumentino la tua produttività - questo ragazzo ha una discreta esperienza e può dare una contro-argomentazione per tutti gli argomenti che gli ho dato fino ad ora.

Il test delle unità non è una politica che viene applicata al team, ma è qualcosa che la maggior parte di noi fa e ha sicuramente funzionato per noi, e possiamo vedere come la stampa, l'esecuzione e il debug non funzionano per lui - sta prendendo troppo lungo per implementare qualcosa e ci vuole ancora più tempo per testare manualmente il suo codice.

    
posta Community 07.11.2011 - 20:48
fonte

4 risposte

4

Il testing delle unità ti porta solo lontano nel grande schema delle cose e TDD è dannoso per i progetti di grandi dimensioni. Trovo che usare un sistema per vedere cosa sta succedendo è molto più vantaggioso di un test unitario. Il problema che hai è che non esiste una politica in atto per costringere uno sviluppatore a fare "la norma", se continua a essere un problema devi portarlo alla direzione e avere una riunione sui benefici. La cosa da capire qui è che devi scrivere dei test unitari contro il suo codice e dimostrare che questo renderà più facile il progresso della squadra. Tuttavia, se non lo fai e hai perso tempo a scrivere test unitari, il tuo team di gestione non sarà soddisfatto.

    
risposta data 07.11.2011 - 20:53
fonte
2

Mi sembra che nel tuo caso il modo migliore per convincere il tuo collega sia scrivere dei test unitari per il suo codice, o scrivere test per l'implementazione che sta facendo, e mostrargli semplicemente quanto è molto più veloce di il suo metodo.

Per alcune persone, qualsiasi argomentazione teorica può essere confutata da qualche altra affermazione teorica, tuttavia poche persone rifiuteranno apertamente "fatti rigidi e freddi".

    
risposta data 07.11.2011 - 21:22
fonte
1

Sembra che la prova di cui hai bisogno, lo hai già fatto. Il tuo miglioramento delle prestazioni dovrebbe essere sufficiente a dimostrare che nel tuo ambiente, il collaudo delle unità è più efficiente.

Se hai tempo e opportunità, puoi provare qualcosa che ho fatto con un mio collega su una questione simile. Stavamo cercando di capire quale combinazione linguistica / struttura fosse più efficiente in piccoli progetti (siamo entrambi programmatori esperti). È arrivato un progetto che doveva essere fatto molto velocemente, quindi abbiamo discusso su quale utilizzare per sviluppare il prodotto. Dal momento che non siamo riusciti a raggiungere un accordo, abbiamo deciso che ognuno avrebbe fatto come loro (eravamo entrambi disponibili) e vedere chi ha finito per primo (consegnato prima un prodotto verificato e valido). Non dirò chi ha vinto (indovina perché), ma credimi che il non-vincitore (perdente) ha ammesso l'affetto della combo selezionata in gara.

Non è possibile fornire un contro-argomento in quella situazione.

    
risposta data 07.11.2011 - 21:23
fonte
0

Questa situazione è molto strana. Non ho mai sentito parlare di qualcuno che salti il test delle unità. A meno che tu non faccia una politica, non c'è modo di "convincere" qualcuno a farlo. Il project manager deve stabilire una politica e un processo affinché ciò avvenga, altrimenti, francamente, non dovresti considerare affatto il tuo lavoro. Se un programmatore non riesce a capire il valore dei test unitari, probabilmente otterrà qualche istruzione. La pratica di lanciare il codice nei sistemi è dannosa, poco professionale e non può essere giustificata come pratica comune in una squadra.

Modifica:

A causa dei commenti sottostanti, ho bisogno di chiarire che a che cosa si riferisce il "test unitario" è "qualsiasi tipo di test unitario", cioè non si tratta necessariamente di test unitari automatizzati, può essere eseguito manualmente.

    
risposta data 07.11.2011 - 21:28
fonte

Leggi altre domande sui tag