Usar las pruebas de IU codificada en las pruebas de carga
Este tema se aplica a:
Visual Studio Ultimate |
Visual Studio Premium |
Visual Studio Professional |
Visual Studio Express |
---|---|---|---|
Para determinar cómo responde su software a diferentes niveles de uso, se realizan pruebas de carga. Una prueba de carga modela el uso previsto de un programa de software simulando varios usuarios que obtienen acceso al programa al mismo tiempo. Para obtener más información, vea Crear y editar pruebas de carga.
Las pruebas de carga se componen principalmente de una serie de pruebas de rendimiento web o pruebas unitarias que funcionan durante un período de tiempo con varios usuarios simulados. Las pruebas de carga también pueden incluir pruebas de IU codificadas automatizadas. La inclusión de pruebas de IU codificadas solo debe hacerse bajo determinadas circunstancias. Todos los escenarios que usan pruebas de IU codificadas en pruebas de carga implican el uso de pruebas de IU codificadas como pruebas de rendimiento. Esto puede ser útil porque las pruebas de IU codificadas le permiten capturar el rendimiento en la capa de la interfaz de usuario. Por ejemplo, si tiene una aplicación que tarda 1 segundo en devolver datos al cliente pero tarda 8 segundos en presentar los datos en el explorador, no puede capturar este tipo de problema de rendimiento mediante una prueba de rendimiento web.
Otro escenario para usar pruebas de IU codificadas en una prueba de carga es si tiene una aplicación que es difícil de incluir en un script en la capa de protocolo. En este caso, podría considerar la posibilidad de realizar temporalmente la carga mediante IU codificada hasta que pueda crear incluir en el script la capa de protocolo correctamente.
Implementar código para medidas de tiempo en pruebas de IU codificadas
De forma predeterminada, no obtendrá medidas de tiempo precisas de una prueba de IU codificada que se use en pruebas de carga porque las llamadas son asincrónicas. Debe implementar correctamente las pruebas de IU codificadas para obtener medidas de tiempo exactas. Esto se puede hacer mediante el método WaitForControlReady. En los fragmentos de código de ejemplo siguientes se muestra esto para una página de inicio de sesión.
Nota
Este es un ejemplo simplificado. Una prueba real también tendría que administrar el tiempo si se produjera un error en el inicio de sesión.
Para implementar correctamente una prueba de IU codificada usada en una prueba de carga
Mida cuánto tiempo se tarda en cargar la página de inicio de sesión.
TestContext.BeginTimer("UI Login Page Load");
Esta llamada carga la página de inicio de sesión.
UIMap.LoginPage();
Cualquier tiempo tomado en una prueba web debe usar WaitForReady. Esto esperará hasta que se muestre el formulario.
UIMap.UIHttpteamtestweb1STORWindow1.UIHttpteamtestweb1STORDocument.UIEmailEdit.WaitForControlReady(); TestContext.EndTimer("UI Login Page Load");
Precaución Asegúrese de que el tiempo que tarda en rellenar el formulario no está incluido en el temporizador. Durante la grabación, genere código de la grabadora después de rellenar un formulario, pero antes de enviarlo.
Esta función rellena el formulario de inicio de sesión.
UIMap.FilledInLoginForm();
Mida el tiempo que tarda la operación de inicio de sesión
TestContext.BeginTimer("UI Login"); UIMap.LoggedIn();
Cualquier tiempo tomado en una prueba web debe usar WaitForReady. Esto espera hasta que se muestre la página de confirmación de inicio de sesión.
UIMap.UIHttpteamtestweb1STORWindow.UIHttpteamtestweb1STORDocument.UIWelcomeJamesBondwellPane.WaitForControlReady(); TestContext.EndTimer("UI Login");
Limitaciones de las pruebas de IU codificadas en pruebas de carga
Las pruebas de IU codificadas controlan el mouse y el teclado. Por tanto, solo 1 usuario virtual puede ejecutar pruebas de IU codificadas por agente. La mejor manera de controlarlo es configurar un escenario independiente en la prueba de carga y establecer la carga de usuarios en 1 usuario. Si tiene más de una prueba de IU, configure la combinación de pruebas como Secuencial. Para obtener más información, vea Crear escenarios adicionales para una prueba de carga existente y Modificar los modelos de combinación de pruebas para especificar la probabilidad de que un usuario virtual ejecute una prueba.
También necesita configurar los agentes de carga para que se ejecuten como un proceso interactivo en lugar de como un servicio. Para obtener más información, vea Instalar y configurar los agentes de Visual Studio y los controladores de compilación y pruebas.
Vea también
Referencia
Conceptos
Probar la interfaz de usuario con pruebas de IU automatizadas