Un sottosistema è una raccolta di classi in un componente discreto all'interno del motore di esecuzione del test delle prestazioni che fornisce un servizio a diverse azioni.
Ad esempio, nell'esecuzione del test, il sottosistema KernelWait gestisce il tempo di inattività e di valutazione per gli utenti virtuali durante l'esecuzione di un test.
Informazioni su questa attività
Di seguito sono riportati degli esempi di servizi forniti dai sottosistemi:
- Traccia delle risposte server. Ad esempio, si consideri un test in cui una richiesta HTTP viene inviata a un server ed è necessario conoscere quando viene restituita la relativa risposta.
Invece che avviare un thread per attendere la risposta, è possibile utilizzare un sottosistema mentre il resto dei thread esegue altre azioni. Una volta emessa la risposta del server, il sottosistema può fornire una notifica oppure riemettere un'azione.
- Gestione della comunicazione asincrona.
- Gestione dell'azione di inattività per gli utenti virtuali.
- Gestione della registrazione. Ad esempio, la creazione di una cronologia di esecuzioni personalizzate può richiedere molto tempo. È possibile assegnare un sottosistema senza avviare un thread con questo processo. È possibile impostare un sottosistema per eseguire le azioni di registrazione speciali mentre il resto delle azioni completano altre attività.
Creazione dell'esempio di sottosistema del motore del test delle prestazioni
Un sottosistema del motore del test delle prestazioni fornisce un servizio a una o più azioni.
Un'azione che utilizza un sottosistema durante l'esecuzione di un test è nota come azione ricorrente. La maggior parte delle azioni contiene finish() alla fine di execute(). Un'azione ricorrente richiede un servizio da un sottosistema prima della fine di execute(). Una volta fornito il servizio, il sottosistema che fornisce le informazioni il servizio aggiorna le informazioni sullo stato nell'azione e riemette l'azione per l'esecuzione. In base alle informazioni sullo stato, un thread operativo del motore del test delle prestazioni prende un corso differente durante la chiamata ricorrente a execute() ed eventualmente richiama finish() per terminare l'azione.
Nel seguente elenco sono riportate le operazioni richieste per utilizzare questo esempio:
- Creazione dell'esempio di sottosistema del motore del test delle prestazioni
- Comunicazione al motore del test delle prestazioni dell'esistenza del sottosistema
- Creazione di una pianificazione e di un test semplice
- Aggiunta di SampleAction e SampleSubsystem al progetto
- Esecuzione della pianificazione con SampleAction mediante SampleSubsystem