Domanda

e il nostro cliente ci hanno bisogno di simulare 50 persona a lavorare allo stesso tempo sul sito web, e il tempo di risposta dovrebbe essere entro 5 secondi. Ma la nostra preoccupazione è che se ci prova al loro sito web, non possiamo controllare la velocità della rete, hardware e così via. Come che potrebbe influenzare il nostro risultato del test. e un'altra cosa è che ci sono alcuni antiforgerytoken nel nostro sito web, lo strumento di test delle prestazioni non può simulare questo meccanismo, dopo registriamo la richiesta, e il sistema di inviarlo di nuovo, fallirà, in quanto il token viene invalidato. e voglio sapere come si fa a eseguire il test delle prestazioni di solito? eventuali suggerimenti ? Grazie in anticipo!

È stato utile?

Soluzione

Il mio approccio al solito viene gradualmente.

In primo luogo, prova nell'ambiente di sviluppo utilizzando un semplice strumento come WCAT. Non verrà eseguito JavaScript o fare postback, ma sottolineerà richieste e thread simultanei, che sono spesso i principali colli di bottiglia delle prestazioni.

Una volta che sta lavorando, se lo desideri, per poi passare fino a Visual Studio Team Test, che supporta scenari più complessi. Avviare in laboratorio, e poi passare a un ambiente beta / pre-produzione. Mi piace anche di utilizzare i contatori delle prestazioni sul lato server e il monitoraggio, in aggiunta o talvolta, invece di misurazione sul lato client.

Per la logica anti-contraffazione, a scopo di test di carico solo si potrebbe costruire una versione del sistema che non ha tale verifica.

Avanti, test con utenti reali in un ambiente beta. I dettagli dipendono dal progetto. Se non riesco a utenti reali, ho anche creato messe a punto con decine di PC che esegue gli script di test con i browser reali. Ci sono alcuni buoni strumenti di terze parti che possono aiutare anche qui, come Runner Load (costoso, però).

Infine, continuerà a monitorare e testare una volta che il software va in produzione. Non è raro per il software che le grandi opere in versione beta a cadere a pezzi in produzione a causa di qualche differenza imprevisti o incoerenza (config IIS, per esempio).

Altri suggerimenti

Quando si esegue prove di carico, è davvero meglio di emulare l'ambiente nel miglior modo possibile. Se le risorse del sistema di test sono diverse da quelle del sistema produttivo, si sono tenuti a ottenere risultati diversi.

Ancora, è possibile eseguire i test con data hardware e relazione sui numeri che si ottengono. Per esempio, si può sapere quanta banda vostro sistema ha bisogno indipendentemente da quanto il sistema produttivo ha a disposizione, perché questo può essere misurata.

Ma se si vuole misurare contro ciò che il cliente vedrà, bisogna farlo con lo stesso ambiente.

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