Condividi tramite


Configurazione di agenti e controller di test per il test di carico

Le informazioni contenute in questo argomento sono valide per:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional 

Visual Studio Express

Argomento applicabile Argomento non applicabile Argomento non applicabile Argomento non applicabile

In Visual Studio Ultimate è possibile utilizzare un computer o un gruppo di computer per generare un carico simulato per i test e per eseguire test in modalità remota e simultaneamente su più computer. Il gruppo di computer è costituito da un singolo controller di test e da uno o più agenti di test. È possibile utilizzare il controller di test e l'agente di test per generare un carico maggiore rispetto a quello che può essere generato da un singolo computer o semplicemente per eseguire test in modalità remota.

Architettura della simulazione del carico

L'architettura di simulazione del carico consiste di un client, di un controller di test e degli agenti di test di Visual Studio.

  • Il client viene utilizzato per sviluppare ed eseguire i test e per visualizzarne i risultati.

  • Il controller di test consente di gestire gli agenti di test e raccogliere i risultati dei test.

  • Gli agenti di test vengono utilizzati per eseguire i test e raccogliere i dati, tra cui informazioni sul sistema e dati di analisi ASP.NET definiti nell'impostazione del test.

Questa architettura fornisce i vantaggi seguenti:

  • La possibilità di ottenere una scalabilità orizzontale per la generazione del carico aggiungendo altri agenti di test a un controller di test.

  • La flessibilità di installare il software del client, del controller di test e dell'agente di test nello stesso computer o in computer diversi. Ad esempio:

    Configurazione locale:

    • Computer1: Visual Studio, controller, agente.

    Computer locale che utilizza controller e agente

    Configurazione remota tipica:

    • Computer1 e 2: Visual Studio (lo stesso controller può essere utilizzato da più tester).

    • Computer3: controller (in cui possono essere anche presenti agenti installati).

    • Computer4-n: agente o agenti tutti associati al controller in Computer2.

    Computer remoti che utilizzano controller e agenti

Anche se un controller di test gestisce in genere diversi agenti di test, un agente può essere associato solo a un unico controller. Ogni agente di test può essere condiviso da un team di sviluppatori. Questa architettura consente di aumentare facilmente il numero di agenti di test, generando così carichi maggiori.

Interazione tra agente e controller di test

Il controller di test gestisce un set di agenti di test per eseguire i test. Il controller di test comunica con gli agenti di test per avviare e interrompere i test, per registrare lo stato dell'agente e per raccogliere i risultati dei test.

Controller di test

Il controller di test fornisce un'architettura generale per l'esecuzione di test e dispone di funzioni speciali per l'esecuzione di test di carico. Il controller di test invia il test di carico a tutti gli agenti di test e attende che lo inizializzino. Quando tutti gli agenti di test sono pronti, tramite il controller di test viene inviato un messaggio agli agenti per avviare il test.

Agente di test

L'agente di test viene eseguito come servizio in ascolto delle richieste dal controller per avviare un nuovo test. Quando viene ricevuta una richiesta, il servizio agente di test avvia un processo su cui eseguire i test. Ogni agente di test esegue lo stesso test di carico.

Agli agenti di test viene assegnato un peso dall'amministratore e il carico viene distribuito in base a tale peso. Ad esempio, se l'agente di test 1 ha un peso di 30, l'agente di test 2 un peso di 70 e il carico è impostato su 1000 utenti, allora l'agente di test 1 simula 300 utenti virtuali mentre l'agente di test 2 ne simula 700. Per ulteriori informazioni, vedere Gestione di controller di test e agenti di test.

Un set di test e di parametri di simulazione vengono inviati all'agente di test come input. Un concetto chiave di Visual Studio Ultimate è che i test sono indipendenti dal computer sui cui vengono eseguiti.

Punti di connessione tra controller di test e agente di test

Nella figura seguente sono mostrati i punti di connessione tra il controller di test, l'agente di test e il client. Sono inoltre illustrate le porte che vengono utilizzate per le connessioni in ingresso e in uscita e le restrizioni di sicurezza applicate a tali porte.

Porte e sicurezza del controller e dell'agente di test

Per ulteriori informazioni, vedere Configurazione di un controller di test e di un agente di test attraverso un firewall.

Informazioni sull'installazione di agenti e controller di test

Per informazioni importanti sui requisiti hardware e software dei controller di test e degli agenti di test, sulle relative procedure di installazione e sulla configurazione dell'ambiente per ottenere prestazioni ottimali, vedere Installazione e configurazione dei controller di compilazione e test e di Visual Studio Agents e Requisiti del controller di test e dell'agente di test.

Utilizzo del controller di test e dell'agente di test con gli unit test

Dopo aver installato un controller di test e uno o più agenti di test, è possibile specificare l'utilizzo di un'esecuzione remota con il controller di test nell'impostazione test che si utilizza durante l'esecuzione dei test di carico. Inoltre, è possibile specificare gli adattatori dati e quelli diagnostici da utilizzare con il ruolo associato agli agenti nell'impostazione test. Per ulteriori informazioni, vedere Procedura: creare un'impostazione test per un test di carico distribuito e Configurazione di computer e raccolta di informazioni diagnostiche mediante impostazioni test.

Licenze e limiti relativi agli utenti virtuali

In Visual Studio Ultimate è possibile utilizzare fino a 250 utenti virtuali in una esecuzione dei 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.

Nota

Visual Studio 2010 Load Test Feature Pack fornisce ai sottoscrittori attivi di Microsoft Visual Studio Ultimate 2010 con MSDN un codice di licenza Visual Studio Load Test Virtual User Pack 2010 univoco per generare utenti virtuali illimitati.

Per scaricare il Feature Pack, disponibile solo per sottoscrittori MSDN, visitare la pagina dei download per sottoscrittori MSDN. Per ulteriori informazioni sul Feature Pack, vedere Microsoft Visual Studio 2010 Load Test Feature Pack.

Nota

Le licenze di Virtual User Pack di Test di carico di Visual Studio 2010 consentono di utilizzare un'architettura multiprocessore grazie alla quale nel computer in cui tali licenze sono installate è possibile utilizzare più processori.

Il numero di utenti virtuali consentito in un'esecuzione dei test locale o in modalità remota è il seguente:

  • Esecuzione dei test di carico locale senza Virtual User Pack di Test di carico di Visual Studio 2010 installato nel computer: se si utilizza Visual Studio Ultimate senza Virtual User Pack di Test di carico di Visual Studio 2010 installato nel computer locale, il numero di utenti è limitato a 250. Il computer locale è limitato anche a un core sulla CPU client.

    Computer locale che utilizza fino a 250 utenti virtuali

    Se il test di carico inizia con più di 250 utenti virtuali, oppure se il numero di utenti virtuali aumenta durante il test di carico superando i 250 utenti, il test verrà interrotto con un errore che indica una violazione della licenza.

  • Esecuzione dei test di carico locale con Virtual User Pack di Test di carico di Visual Studio 2010 installato nel computer: se si utilizza Visual Studio Ultimate con Virtual User Pack di Test di carico di Visual Studio 2010 installato nel computer locale, è possibile eseguire un test di carico per il quale viene utilizzato fino al numero massimo di utenti virtuali per cui è stata acquistata la licenza.

    Computer locale con licenza per utenti virtuali

    Nota

    Se si utilizza un numero maggiore di utenti virtuali rispetto al limite della licenza, l'esecuzione non verrà interrotta, ma verrà aggiunto un errore nei risultati del test di carico e nel log eventi dell'applicazione nel computer.

    L'aggiunta di Virtual User Pack di Test di carico di Visual Studio 2010 in uno scenario del controller non di test offre l'ulteriore vantaggio di sbloccare tutti i processori del computer per l'utilizzo. Senza Virtual User Pack di Test di carico di Visual Studio 2010, nel computer locale è possibile utilizzare solo il primo processore. Dopo avere aggiunto Virtual User Pack di Test di carico di Visual Studio 2010, per i test di carico è possibile utilizzare tutti i processori sul computer quando sono in esecuzione.

  • Esecuzione dei test di carico remota con Virtual User Pack di Test di carico di Visual Studio 2010 installato utilizzando un controller e agenti: se si utilizza Visual Studio Ultimate e si dispone di un controller di test e di uno o più agenti di test installati con Virtual User Pack di Test di carico di Visual Studio 2010 obbligatorio, è possibile eseguire esecuzioni di test di carico remote con il numero massimo di utenti virtuali per cui è stata acquistata la licenza.

    Test di carico in cui viene utilizzato un computer remoto

    Computer remoto che utilizza controller e agente

    Test di carico in cui vengono utilizzati diversi computer remoti

    Computer remoti che utilizzano controller e agenti

    Nota

    Se si specifica un numero maggiore di utenti virtuali rispetto al limite della licenza, l'esecuzione non verrà interrotta, ma verrà aggiunto un errore nei risultati del test di carico e nel log eventi dell'applicazione nel computer.

Aggiunta di codici di licenza di Virtual User Pack di Test di carico di Visual Studio 2010

È possibile utilizzare lo strumento di configurazione del controller di test di Microsoft Visual Studio 2010 per installare i codici di licenza di Virtual User Pack di Test di carico di Visual Studio 2010. Per ulteriori informazioni, vedere Procedura: aggiungere codici di licenze virtuali per i test di carico.

I codici di licenza di Virtual User Pack di Test di carico di Visual Studio 2010 possono inoltre essere aggiunti dalla riga di comando utilizzando TestControllerConfig.exe o VSTestConfig.exe. Per ulteriori informazioni, vedere Procedura: aggiungere codici di licenze virtuali per i test di carico utilizzando la riga di comando.

I codici di licenza di Virtual User Pack di Test di carico di Visual Studio 2010 vengono applicati per singolo computer. Pertanto, se si dispone sia di Visual Studio Ultimate installato utilizzando più di 250 utenti sia di un controller di test installato nello stesso computer, è necessario immettere il codice di licenza solo una volta su tale computer per abilitare l'utilizzo degli utenti virtuali in entrambi gli strumenti.

Per consentire il riconoscimento delle chiavi o dei codici di licenza appena aggiunti, è necessario riavviare il servizio controller di test o Visual Studio Ultimate, a seconda dello strumento utilizzato.

Per ulteriori informazioni, vedere Modifica dei modelli di carico per modellare le attività utente virtuali.

Vedere anche

Attività

Procedura: eseguire un test di carico utilizzando controller di test e agenti di test specificati in un'impostazione test

Procedura: eseguire un test mediante controller e agenti di test

Concetti

Test dello stress e delle prestazioni dell'applicazione

Procedura: accedere ai risultati dei test di carico per l'analisi

Altre risorse

Esecuzione di test di carico e delle prestazioni Web

Procedura: aggiungere codici di licenze virtuali per i test di carico

Procedura dettagliata: utilizzo di un controller di test e di agenti di test in un test di carico

Procedura: creare un'impostazione test per un test di carico distribuito

Requisiti del controller di test e dell'agente di test