Domanda

In pratica, quello che misura(s) si usa per sapere quando è il momento di interrompere il test di un'applicazione e di spostare la produzione?

È stato utile?

Soluzione

Per progetti nella mia organizzazione, le misure io in genere uso sono come segue:

  • No il livello di Gravità 1 (vedi tappo) problemi
  • No il livello di Gravità 2 (principali funzionalità paralizzato) problemi
  • Numero accettabile di Gravità 3 (minore funzionalità) problemi

"Accettabili" è naturalmente molto squishy numero, a seconda delle dimensioni dell'applicazione, etc.ecc.

Una volta che tali presupposti sono soddisfatti, io avrò un incontro di tutte le parti interessate (QA piombo, Dev portare, Supporto App di piombo, ecc.), e passare attraverso l'elenco delle questioni in sospeso, e assicurarsi che non vi è accordo circa la gravità assegnato a questioni in sospeso.Una volta mi hanno confermato che ci sono in circolazione Sev 1 e Sev 2 problemi, io il "Go/No Go" chiamate da ciascuna delle parti interessate.Se tutti dicono "Vai", mi sento a mio agio passare alla Produzione.Se almeno uno stakeholder dice "No Go", si esaminano le ragioni del "No Go" e, se necessario, adottare misure per risolvere i problemi dietro.

In progetti di piccole dimensioni, il processo potrebbe essere più snella, e se è solo un una sola persona la tua serie di pre-condizioni può essere molto più semplice, vale a dire"l'applicazione fornisce un ragionevole beneficio, pur avendo un (apparentemente) un numero accettabile di bug - diciamo che c'è!".Fintanto che il beneficio previsto dall'applicazione supera il fastidio di bug, soprattutto se si sta seguendo il "rilascio rapido e spesso" linea guida, che potrebbe funzionare per voi.

Altri suggerimenti

Primo, non si finisce mai di test.Quando si fatto il test e rilascio, vuol dire che gli utenti sono test invece di voi.

Secondo, quando il test completo di script di passare con un livello accettabile di fallimento si è pronti a partire.

Infine, questo è altamente specifico per il tuo caso.Su alcuni progetti, abbiamo una settimana 3 periodo di test, dove un sacco di persone hackerare il sistema, prima di ogni minimo cambiamento può essere implementato.In altre zone (e meno critico), piccole modifiche possono essere spostati con il cenno di un altro sviluppatore.

Una interessante metodologia di test che ho sempre voluto provare è 'errore di semina'.L'idea è che si dispone di una persona inserire intenzionale di un bug nel sistema che rientrano in categorie diverse.

Per esempio:

  • Cosmetici, errori di ortografia, ecc
  • Non critico gli errori
  • Critica errori e si blocca
  • Dati i problemi.Non si verificano errori, ma qualcosa di più profondo è di sbagliato con i risultati.
  • ecc.

La 'semina' documenti esattamente ciò che è stato modificato per inserire questi bug modo che possano essere rapidamente ripristinato.Come il team di test rileva le teste di serie di bug, sono anche di trovare il bug vero e proprio, ma non so la differenza.In teoria, se il team di test rileva il 90% delle teste di serie di errori critici, quindi probabilmente hanno trovato un numero proporzionale di reale errori critici.

Da queste statistiche, si può iniziare a fare chiamate di giudizio su quando è possibile disporre di un rilascio.Naturalmente questo non sarebbe nemmeno vicino a prova di errore a causa della natura casuale di che bug si trova (reale o testa di serie), ma probabilmente è meglio che non avere nessuna idea a tutti quanti bug potrebbe essere il rilascio.

Al mio posto di lavoro una metrica che viene a volte utilizzato è che abbiamo testato abbastanza, quando iniziamo a trovare i vecchi e non dichiarata bug che sono stati presenti per l'ultimo parecchi versioni dei nostri prodotti.L'idea è che se questi sono i bug che ci vengono a trovare durante i test, e i bug sono stati presenti per anni senza un cliente lamentarsi di loro, poi si sono probabilmente sicuro nave.

Naturalmente, si hanno anche tutte le prove manuali, test automatizzati, rendendo gli sviluppatori di utilizzare il prodotto, beta, e la sperimentazione continua roba così, ma utilizzando come molti bug stiamo scoprendo ora che sono stati presenti, ma non dichiarata, nelle precedenti versioni era una nuova idea di me quando l'ho sentita per la prima volta.

Quando tutti i principali bloccanti sono andati.

Scherzi a parte, si dovrebbe fare un Utente di Test di Accettazione e di consentire agli utenti di utilizzare il sistema e scoprire se il suo tutto tagliati fuori per loro.Se questo non è pratico, fare una closed beta, con selezionare gli utenti che assomigliare al vostro target di riferimento.

È impossibile trovare davvero di tutti i bug del sistema, quindi a volte l'unica vera regola è appena la nave.

mharen,

Trovo che se si completa di test automatizzati, è del tutto irresponsabile nave software, a meno che tutti del loro passaggio.Test automatizzati dire che queste sono aree che sono o core funzionalità o bug che si sono verificati in passato che sono a conoscenza di, e in grado di correggere in modo da avere un test di passaggio.Sarà irresponsabile nave software che non passa, il 100% del suo test automatizzati.

Jon,

Non parlavo di script di test implica automatizzato i test.Mi riferivo a quello più tradizionale di un approccio step-by-step elenco di cosa prova e come testarlo.

Detto questo, non credo che tutti i test dovrebbero essere tenuti a passare.Tutto dipende dalla gravità e la priorità.Su un progetto di grandi dimensioni, si può avere devs prove di scrittura che non basate su problemi segnalati dagli utenti.Dal momento che non siamo in grado di risolvere tutti i bug con ogni versione, è un dato di fatto che alcuni test, semplicemente, non passerà.

Misura la quantità di tempo di prova del prodotto tra "showstopper" o funzionalità principali bug in grado di farvi sapere che siete quasi arrivati.In tempi di rapido cambiamento il prodotto con nuove funzionalità di andare in comune per un team di test per trovare che la maggior parte dei bug sono di reporting sono gravi funzionalità di bug.Come quelle distribuite con, c'è spesso una grande quantità di minore entità, forma e finitura dei problemi di tipo volti a migliorare la fluidità e la chiarezza dell'interazione;complessivamente fanno una grande differenza nella qualità del prodotto, ma ognuno non è terribilmente importante.Come quelli corretti e la sperimentazione continua, probabilmente continuano ad arrivare segnalazioni di bug come tester spingere in casi di errore e di insolito modelli di utilizzo.A quel punto dipende da quando si vede il valore di business di rilasciare contro il rischio di non rilevati showstoppers.

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