Come sottolineo l'importanza dei test unitari per il mio manager [duplicato]

12

Di recente ho iniziato un nuovo lavoro e sono stato incaricato di completare una funzione che un altro sviluppatore non ha terminato prima di lasciare la società.

I test esistenti non sono aggiornati (vale a dire inutili) ... il debito tecnico ovunque. Penso che sarebbe una pessima idea implementare funzionalità senza test, l'ho messo in discussione alcune volte e continua a dire che completeremo questa funzione e quindi potremo fare dei test.

Ma lo sviluppatore precedente non è riuscito ad aggiornare i test, quindi sembra che il mio manager lo dica, ma non lo dice e continua a spingere per ulteriori funzionalità.

Questa ultima funzionalità è una grande, e penso che sarebbe una pessima idea terminarla senza prima scrivere test per l'intera applicazione. Capisco che il mio manager ha le sue scadenze / pressioni ecc., Ma questa funzione deve essere fatta bene, oppure potrebbe tornare a perseguitarci entrambi.

Quindi, come posso metterlo a suo agio in un modo che rifletterà su quanto sia importante questo problema?

Devo anche menzionare che sono l'unico sviluppatore e il manager non è tecnico.

    
posta Aesthete 24.01.2014 - 10:05
fonte

3 risposte

8

Conosco questi problemi dalla mia azienda e, dopo un progetto quasi fallito, la direzione ha deciso di impegnarsi maggiormente nei test. Ma ovviamente non è ciò di cui hai bisogno.

Cercherò di spiegargli che più tardi si noterà un errore / errore, più sarà costoso (tempo e denaro) la correzione. Mostra comprensione per le sue esigenze in quanto ha anche bisogno di svolgere i propri compiti, ma mostrare, che non è possibile garantire l'adempimento dei requisiti in tempo. In base a ciò, il "successo del progetto" è a rischio.

Dato che è il project manager, avrebbe dovuto spiegare ai suoi capi perché aveva deciso come lui. (Questo è implicito, non penso che tu debba menzionarlo dopo la tua spiegazione)

Ciò che è veramente importante è che comunichi un livello di conoscenza comune. Usa il linguaggio che capisce e chiedigli la sua vista sull'argomento. In questo modo si ottiene una discussione sullo stesso livello e si spera che si fermi per bloccare. Spero che questo ti aiuti;)

    
risposta data 24.01.2014 - 10:26
fonte
13

Sono qui partendo dal presupposto che il tuo progetto sia stato usato più o meno a questo punto.

Fai non scrivi test per cose che sono già usate. Tali funzionalità sono testate dagli utenti stessi. Scrivi solo test quando viene riscontrato un errore, per assicurarti che non si verifichi di nuovo.

Per quanto riguarda le nuove funzionalità, tuttavia, dovresti testarle. Forse dovresti anche provarli prima che esistano (TDD). Non lavorare su un'altra entità prima che l'altra sia stata testata e dire che una funzione è "non pronta" se non è stata testata (che è vero). Forse anche includere il tempo di test nelle stime per ogni attività, quando ritieni che sia davvero obbligatorio.

    
risposta data 24.01.2014 - 10:31
fonte
7

Se i test ti aiuteranno a consegnare più velocemente e in modo più efficace, scrivili mentre vai (particolarmente possibile sotto forma di asserzioni). Sta sentendo che ti piacerebbe perdere tempo, perché non ha alcuna base per stabilire se i test siano o meno utili.

    
risposta data 24.01.2014 - 10:20
fonte