Domanda

Nella mia azienda abbiamo sviluppare un prodotto software. Fino ad ora non abbiamo avuto alcun tester, in modo sostanzialmente gli sviluppatori sono stati i collaudatori, e, naturalmente, il cliente e gli utenti (non buono).

Il nostro team è attualmente composto da 4 sviluppatori e lavoriamo principalmente con CruiseControl, Flex, ASP.NET, IIS, MSSQLServer e WebORB. Esorto i gestori di assumere un tester, ma mi chiedo se i tester sono normali nello sviluppo di software. Quindi:

  1. Sono tester necessarie a prodotto (o progetto su larga scala) di sviluppo?
  2. In caso di tester solo fare il lavoro di test? Oppure si può aspettare da uno sviluppatore o designer grafico per testare la metà della settimana?
  3. Dove si possono trovare buone tester (suppongo non ci sia una laurea in test di sviluppo software)?
  4. E 'il compito del project manager di teamlead tecnica per testare tutto?

thx, Lieven Cardoen

ps:. Thx, Vinay, noi abbiamo unit test, ma anzi, unit test non possono coprire quello che i tester possono

È stato utile?

Soluzione

1) Se tester necessari prodotto (o progetto di sviluppo su larga scala)?

Sì. Qualcuno deve assumersi la responsabilità di valutare quando qualcosa è testato a sufficienza e di lavoro quali bug devono fissare o può spedire, perché ci sono soluzioni alternative.

2) In caso di tester solo fare il lavoro di test? Di si può aspettare da uno sviluppatore o designer grafico per testare la metà della settimana?

Tester spesso fanno il lavoro di assistenza clienti o di lavoro con il cliente per sviluppare i requisiti. I tester possono agire come voci interne per i clienti ... e se interagiscono con il cliente abbastanza dovrebbe sentire un senso di responsabilità per ottenere un prodotto di qualità adeguata di sviluppo sanno che il cliente vorrà.

3) Dove si possono trovare buone tester (suppongo non ci sia una laurea in test di sviluppo software)?

Scommetto che v'è un grado da qualche parte. Un sacco di tester che abbiamo sono studenti universitari di informatica che stanno facendo un anno nel settore, prima di tornare per il loro ultimo anno presso uni.

4) E 'il compito del project manager di teamlead tecnica per testare tutto?

Non necessariamente. Dipende quanto è grande la squadra è, se è piccolo, allora sì, qualcuno può raddoppiare e fare entrambi i ruoli. Per i progetti più grandi, però, si tratta di persone diverse.


Ricorda. Avere un tester non è una scusa per sviluppatori / programmatori non per testare il codice come scrivono o creare unit test. Gli sviluppatori hanno ancora la responsabilità di sviluppare un buon prodotto. Non dovrebbero mai tentare di effettuare una scusa per un bug che hanno creato accusando un tester per non trovandola.

Altri suggerimenti

E 'la domanda # 10 sul test Joel:

http://www.joelonsoftware.com/articles/fog0000000043.html

dovrebbe dirvi tutto quello che c'è da sapere. :)

E 'meglio avere tester nella squadra. Noi, gli sviluppatori non può ottenere tanto dei difetti quando ci prova, ma se viene testato da un tester poi afferra tanti difetti prima di rilasciare i difetti.

E 'meglio avere casi di test unità anche. Quando sviluppiamo una nuova funzione, solo dobbiamo aggiornare il banco di prova ed eseguirlo.

Tester sono necessarie in entrambi i casi. Anche se il vostro sviluppo è test-driven, penso che il ruolo del tester spesso si concentra sulle esigenze esterne del progetto - fa il progetto consegnare il prodotto previsto in grado di soddisfare i requisiti?

trovo che in grandi ambienti aziendali si hanno spesso una miniera di buone tester al call-center o quelli che fanno servizio al cliente. Spesso hanno una solida conoscenza dei processi aziendali, i problemi e le esigenze.

In questo contesto abbiamo spesso lasciate che i tester lavorano con la costruzione di casi di test di vita reale in sistemi back-end anche, a volte questi sono anche utilizzati per i test di integrazione che gli sviluppatori scrivono. Abbiamo avuto un grande successo con lasciando che gli sviluppatori chiedere i tester per i data / scenari di test per test automatizzati CI-based.

possono si aspettano altri ruoli di prendere parte a test. Credo davvero che tutti dovrebbero essere focalizzata sulla qualità e test, ma purtroppo tutti non può essere responsabile.

  1. Da alcune dimensioni in poi, assolutamente (direi circa 10 sviluppatori).

  2. Tester potrebbe anche fare costruire e lavoro di integrazione. In gruppi più piccoli sviluppatori devono testare, perché non c'è nessun altro a farlo.

  3. Buona domanda. Forse alcuni dei vostri sviluppatori come test.

  4. No, soprattutto quando il progetto diventa più grande.

Ho lavorato su un progetto di grandi dimensioni (centinaia di sviluppatori), nel nostro gruppo una cinquantina. Il nostro gruppo ha avuto un gruppo di integrazione e collaudo di due o tre persone a tempo pieno e un gruppo di studenti.

  1. ON larga scala, sì. Tuttavia ci sono molti metodi e tipi di test differenti. Questi includono utente, la regressione, unità e test di integrazione. Cercare di automatizzare il più possibile. Scopri Selenio (IDE), Molydbenum, Scenari di utilizzo e lo sviluppo Agile.

  2. Uno sviluppatore o designer dovrebbero decidere se essi hanno incontrato i criteri di accettazione, ma se si prova il proprio lavoro allora è un po 'come scrivere il proprio esame prima di sedersi per esso. Gli sviluppatori di test opera di altro sviluppatore non è molto meglio a mio parere.

  3. Non so

  4. Credo che un project manager non avrà il tempo per test rigorosi. E 'davvero il lavoro di un tester dedicato che sa di essere diligente e può interagire con il responsabile del progetto.

  
      
  1. Sono tester necessarie a prodotto (o progetto su larga scala) di sviluppo?
  2.   
  3. In caso di tester solo fare il lavoro di test? Di ci si può aspettare da un   sviluppatore o progettista grafica per   test di metà della settimana?
  4.   
  5. Dove si possono trovare buone tester (suppongo non ci sia una laurea in   software di sviluppo di test)?
  6.   
  7. E 'il compito del project manager di teamlead tecnica per testare   tutto?
  8.   

1 - sullo sviluppo del prodotto quando si hanno> 10 clienti: hell yes. ESSENZIALE. Lo stesso su un progetto su larga scala. Si può lesinare quando si è piccoli, ma una volta che si ottiene oltre una certa dimensione, il dolore di aggiornamento (ad esempio) di 100 clienti in tutto il mondo supera lo stipendio anche di un solo tester.

2 - sì, tho c'è una certa sovrapposizione in lavoro di supporto troppo. Developer dovrebbe fare test di base - funziona? - ma è fino ai tester per fare il esaustivo, end-to-end, weird-caso d'uso di tipo di test. E 'uno spreco di tempo agli sviluppatori per farlo, credo. Graphic designer non dovrebbero provare -. bene, prova di utente, mi auguro, ma questo anche prima che arrivi agli sviluppatori

3 - alcuni sviluppatori fanno buoni tester. alcune persone di supporto fanno buoni tester. a parte questo - semplicemente trovarli a caso. pubblicizzare. ecc non ci sono gradi, ma qualcuno che è pedante, può attaccare per se stessi, e sa di più su come l'ambiente fine tiene insieme che come ogni riga di codice funziona sarebbe bene.

4 - n. il PM tiene insieme il progetto, e coordina il tester, sviluppatori ecc il vantaggio tecnologico dovrebbe essere, sai, che porta il team tecnico. Non prova.

Ovviamente, non v'è perdita tra i ruoli. A volte, tutti dovrebbero fare qualche test, ma questo è più per ottenere la massima copertura poco prima RTM, non in un giorno per giorno o settimana a base settimana.

I test unitari sono un ottimo inizio, in quanto catturano gli errori di logica, ma non si può pretendere di catturare le interazioni degli utenti pazzi, o problemi che mostrano solo dopo la vostra applicazione è stato in esecuzione per 72 ore + - test di unità non sarà mai MAI prendere questi. Il vostro cliente, ma poi non avrà i clienti a lungo:)

A proposito, ho "stato lì, fatto che". Ho testato sui clienti e aveva i tester appropriate nelle diverse fasi (VRS avvio acquistate da una grande azienda) dello stesso prodotto. Il prodotto era molto più solida, una volta che abbiamo avuto tester, ei clienti erano più felici troppo (più, è difficile stendere una piccola patch critica a 400 siti in tutto il mondo -! Prenderlo prima della spedizione)

Mai sottovalutare il valore di specialisti.

La maggior parte delle persone che non sono i tester, in particolare gli sviluppatori, non godono di prova e non lo farà bene. Se chiedete ad un grafico o uno sviluppatore di spendere la metà del loro tempo di test, nella migliore delle ipotesi si perde il 50% della produzione di un buon designer / developer e di ottenere il 50% di un povero, tester costoso. Nel peggiore dei casi si perderli completamente perché sarà trovare un posto migliore per lavorare.

Nel caso di sviluppatori, di solito sono troppo vicini al codice di essere in grado di testare in modo obiettivo. Faranno ipotesi in base alla loro conoscenza dei meccanismi interni. Uno sviluppatore testare il proprio codice è particolarmente grave.

Il project manager dovrebbe essere responsabile di assicurare che tutto è testato, ma non dovrebbe fare da soli. Non avranno abbastanza tempo o le competenze necessarie.

In precedenza ho lavorato per una società di consulenza. Non abbiamo avuto i tester specializzati e sarebbe invece utilizziamo qualsiasi consulenti erano attualmente senza un progetto. Nessuno di loro aveva alcuna competenza test e di conseguenza la maggior parte di loro non erano molto buoni tester. Ci piacerebbe avere segnalazioni di bug come "il sistema non funziona più", o il mio preferito: una schermata di un'applicazione che mostra come lento è stato (uno screenshot dell'applicazione in esecuzione in fretta, non avrebbe guardato diverso). Avrebbero abusare del sistema di tracciamento dei bug troppo (o bypass completamente a favore della propria casa-brew spreadshhets Excel). E 'stato un incubo.

Credo che ciò che tester (può) portare al tavolo è una nuova serie di occhi su un prodotto. Ho scoperto che sono suscettibili di seguire il percorso felice quando l'esecuzione di software, sia esso attraverso l'interazione UI o utilizzando le classi che ho scritto. Quando si sa come si suppone che qualcosa su cui lavorare, è un po 'innaturale per fare le cose nel modo sbagliato, per esercitare il prodotto in un modo che non era previsto o per provare le cose in un ordine che nessuno che sa come funziona sarebbe fare.

Le mie risposte alle tue domande sono le seguenti:

  1. Sì. Test è una necessità e quindi è necessaria una sorta di tester. In genere, unit test prenderà un sacco di problemi di basso livello, ma test di usabilità e test 'esigenze' di determinare se soddisfa i crediti nei confronti della brochure patinata. Se si sostiene il software fa 'X', quindi parte del lavoro del tester è quello di assicurarsi che davvero fa 'X'. Abbiamo avuto tester scoprire alcuni problemi su piattaforme che io normalmente non uso. E 'bello trovare quei problemi in anticipo.

  2. Forse. Attraversiamo-testare i nostri prodotti in-casa, ma hanno un gruppo di test separata troppo. Noi tendiamo a (in-house) trovare la parte del leone dei problemi, ma i collaudatori a tempo pieno trovare le cose a volte che ci saremmo probabilmente abbiamo mai trovato. Se si divide il tempo tra lo sviluppo e la sperimentazione, ha bisogno di essere chiaro che il test non è un ripensamento. Se sto lavorando sul mio oberati di sviluppo e hanno difficoltà a spendere il tempo necessario testare il prodotto, quindi non ho intenzione di essere che efficace come tester. La gestione del tempo è essenziale se si sta andando ad avere gli sviluppatori di raddoppiare come tester.

  3. Non è sicuro. Alcuni gruppi (IV e V gruppi, per esempio) in un'organizzazione non solo collaudo. Ho il sospetto che ci sono un certo numero di persone là fuori che non hanno lavoro o desiderano scrivere software, ma può testare il heck fuori di un prodotto. Alcuni dei nostri migliori tester al mio ultimo lavoro non scrivere alcun codice a tutti.

  4. Dipendere dal vostro progetto, ma direi di no, in generale. La responsabilità è qualcosa che si sviluppa al mio negozio. Il piombo non è responsabile di tutti i test. Siamo tutti responsabili.

In ogni caso, vale a dire i miei due centesimi.

Ognuno dirà sono necessari tester, e questa è la risposta politicamente corretta. Ma tester sono solo uno dei tanti strumenti disponibili nella casella degli strumenti di garanzia della qualità. È possibile spedire il software perfettamente bene senza tester. Per esempio, mi chiedo se StackOverflow dispone di un reparto di prova?

Un tester sarà misura la qualità del codice sviluppatori producono. Ma la disponibilità di misure di qualità non fa nulla per migliorare la qualità.

Tester non vengono gratis. Dovrete modificare lo sviluppo di consegnare al team di test al posto del cliente. Questo può portare a uno scollamento tra i clienti e gli sviluppatori: i tester potrebbero trovare bug che i clienti non potevano preoccupano, e ignorare i bug che sono molto importanti per il cliente. Inoltre, si dovrà creare e mantenere un ambiente di test separato.

Le buone tester vi aiuterà a sviluppare meglio, e in particolare rilasciare più agevolmente. Ma la vostra distanza in miglia può variare.

P.S. In una grande azienda tester sono essenziali: essi permettono la colpa spostamento. Dire un bug provoca danni dei clienti -> esecutivo è sconvolto. A questo punto l'esecutivo è pronto a fare cose brutte alla tua squadra. Con un team di prova, è possibile spostare la colpa per il test team, che ha la colpa a te. Un compromesso rotola fuori:. Si introducono nuovi processi, il test team ingaggia più tester, e l'esecutivo dice di essere personalmente migliore roba

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top