Test dello stress e delle prestazioni dell'applicazione
Le informazioni contenute in questo argomento sono valide per:
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual Studio Express |
---|---|---|---|
Per determinare il tipo di risposta del software a diversi livelli di utilizzo vengono eseguiti test di carico. I test di carico prevedono la modellazione dell'utilizzo previsto di un'applicazione software simulando l'accesso simultaneo da parte di più utenti.
In Visual Studio Ultimate è possibile utilizzare fino a 250 utenti virtuali in un'esecuzione del test di carico locale. Se per i test di carico è necessario un numero maggiore di utenti virtuali, oppure se si desidera utilizzare computer remoti, è necessario acquistare Virtual User Pack di Test di carico di Visual Studio 2010. È possibile acquistare Virtual User Pack di Test di carico di Visual Studio 2010 dove è stato acquistato Visual Studio Ultimate. Per ulteriori informazioni, vedere Gestione delle licenze utente virtuali per i test di carico con un controller di test e Configurazione di agenti e controller di test per il test di carico.
In un modello di utilizzo elevato, ad esempio, migliaia di utenti che visitano contemporaneamente un sito Web, è necessario disporre di più computer per generare un carico sufficiente. A tale scopo, è possibile configurare un gruppo di computer affinché generi carichi di test simulati intensivi. Il gruppo di computer è costituito da uno o più controller di test e uno o più agenti di test. Un agente di test esegue i test ed è in grado di generare il carico simulato. Il controller di test coordina gli agenti di test e raccoglie i risultati dei test e deve essere configurato utilizzando uno o più Virtual User Pack di Test di carico di Visual Studio 2010. Per ulteriori informazioni su come configurare controller di test e agenti di test, vedere Distribuzione di test di carico in più computer di test utilizzando controller di test e agenti di test, Configurazione di computer di test per l'esecuzione di test o la raccolta di dati e Installazione e configurazione dei controller di compilazione e test e di Visual Studio Agents.
Nota
Sarà inoltre necessario acquistare le licenze di Virtual User Pack di Test di carico di Visual Studio 2010 per il numero di utenti virtuali necessari per ogni controller di test.
I test di carico sono composti da una serie di test Web o unit test che operano con più utenti simulati in un determinato periodo di tempo. I test di carico vengono creati con la Creazione guidata test di carico.
Nota
I test di carico possono includere anche test codificati dell'interfaccia utente automatizzati. I test codificati dell'interfaccia utente devono essere inclusi solo in presenza di circostanze specifiche. Per ulteriori informazioni, vedere Utilizzo di test codificati dell'interfaccia utente nei test di carico.
Quando si aggiungono test Web a un test di carico, si simula l'apertura simultanea da parte di molti utenti di connessioni a un server e la creazione di più richieste HTTP. Nei test di carico è possibile impostare le proprietà in modo che possano essere ampiamente applicate a singoli test Web.
Utilizzare gli unit test in un test di carico per verificare il comportamento di un server tramite un'API. In genere, tale approccio viene utilizzato per i server a cui si accede tramite thick client o altri servizi del server anziché tramite un browser. Un esempio è rappresentato da un'applicazione con un front-end Winforms o WPF che utilizza WCF per comunicare con il server. In questo caso, vengono sviluppati unit test che chiamano WCF. Un altro esempio è costituito da un server diverso che chiama il server tramite i servizi Web. Inoltre, è possibile che un client a due livelli effettui le chiamate direttamente a SQL. In questo caso, è possibile sviluppare unit test per chiamare direttamente SQL. Per ulteriori informazioni sugli unit test, vedere Verifica del codice tramite unit test.
I test di carico possono essere utilizzati in diversi tipi di test:
Tipo di test |
Descrizione |
---|---|
Rapido |
Le prestazioni dell'applicazione sotto carichi leggeri per brevi periodi di tempo. |
Stress |
Per determinare se l'applicazione viene eseguita correttamente per una durata significativa sotto un carico pesante. |
Prestazioni |
Per determinare il livello di reazione dell'applicazione. |
Pianificazione delle capacità |
Le prestazioni dell'applicazione rispetto a varie capacità. |
Per modificare le proprietà del test di carico, utilizzare l'Editor test di carico. Le proprietà consentono di eseguire i test Web con diversi profili utente, destinazioni browser e modelli di carico. I risultati dei test sono archiviati in un repository dei risultati del test di carico basato su SQL. Per ulteriori informazioni, vedere Gestione dei risultati dei test di carico nel repository dei risultati del test di carico.
È possibile visualizzare sia i test di carico in esecuzione che quelli completati nell'analizzatore test di carico. Per ulteriori informazioni, vedere Analisi delle esecuzioni di un test di carico.
Visualizzazione di un test in esecuzione nell'analizzatore test di carico
Attività
Utilizzare gli argomenti seguenti per ottenere informazioni sulla configurazione e sull'utilizzo dei controller di test e degli agenti di test:
Attività principali |
Argomenti correlati |
---|---|
Introduzione ai test di carico e Web: è possibile eseguire le azioni descritte nelle procedure dettagliate relative ai test Web e di carico per apprendere come creare, modificare, eseguire e visualizzare i risultati di test Web e di carico. |
|
Creazione di test delle prestazioni e di stress: è possibile creare test di carico per misurare le prestazioni e lo stress mediante Microsoft Visual Studio Ultimate. |
|
Configurazione della modalità di esecuzione dei test di carico: è possibile configurare la modalità di esecuzione dei test di carico per verificarne il funzionamento corretto. È possibile utilizzare un gruppo di computer per generare un carico simulato per i test e per eseguire test in modalità remota e simultaneamente su più computer. È inoltre possibile configurare le impostazioni di esecuzione per il test di carico. Le impostazioni di esecuzione sono una serie di proprietà che determinano la modalità di esecuzione del test di carico. Sono organizzate in categorie nella finestra Proprietà. |
|
Esecuzione di test di carico: è possibile eseguire il test di carico e visualizzarne i risultati durante l'esecuzione. |
|
Analisi delle esecuzioni dei test di carico: è possibile analizzare i risultati di un test di carico per individuare colli di bottiglia, identificare errori e misurare i miglioramenti dell'applicazione. |
|
Visualizzazione dei risultati dei test delle prestazioni Web: è possibile visualizzare i risultati dei test delle prestazioni Web mediante il Visualizzatore risultati test prestazioni Web. |
|
Gestione dei risultati del test di carico: è possibile gestire i risultati del test di carico dall'Editor test di carico utilizzando la finestra di dialogo Apri e gestisci risultati test di carico. È possibile aprire, importare, esportare e rimuovere i risultati test di carico. Quando si eseguono i test di carico, le informazioni raccolte durante l'esecuzione possono essere archiviate nel repository dei risultati test di carico, che è un database SQL. Il repository dei risultati test di carico contiene i dati del contatore delle prestazioni e tutte le informazioni sugli errori registrati. |
|
Creazione di rapporti relativi alle tendenze dell'analisi dei test di carico: è possibile utilizzare i risultati dei test di carico per creare rapporti di Microsoft Excel per determinare livelli di prestazioni e tendenze. |
|
Creazione di plug-in personalizzati per test Web e di carico: è possibile scrivere plug-in personalizzati per test Web e di carico tramite l'API dei test Web e di carico. |
|
Risoluzione dei problemi relativi ai test di carico: qualora se ne verificassero, potrebbe essere necessario provvedere alla risoluzione dei problemi relativi ai test di carico. |
Sicurezza
I file del test di carico e i risultati del test di carico contengono informazioni potenzialmente riservate che potrebbero essere utilizzate per realizzare un attacco al computer o alla rete. I test di carico e i risultati dei test di carico contengono nomi di computer e stringhe di connessione. Quando si condividono i test o i relativi risultati, è necessario tenere in considerazione tali rischi.
Risorse esterne
Video
Forum
Test di carico e delle prestazioni Web in Visual Studio
Blog
Guida di riferimento rapida
Guida di riferimento rapida per i test delle prestazioni in Visual Studio
Vedere anche
Concetti
Verifica del codice tramite unit test
Cenni preliminari sull'Analizzatore test di carico