Cómo utilizar JMeter para la prueba de carga de aplicaciones web ASP.net que implementan viewstate

Soy un desarrollador .net que no tiene experiencia previa en JMeter / Stress testing. Estoy intentando cargar el sitio web ASP.net que había desarrollado utilizando JMeter. La razón para usar JMeter es que es una herramienta de código abierto que tiene mucha fama y credibilidad.
Me referí aeste enlace para cuidar el estado visual, que es una característica típica de ASP.net. Sin embargo, mis requisitos no son tan simples como se indica allí. Estoy intentando cargar la prueba de mi sitio enviando un ID de usuario y una contraseña a la página de inicio de sesión y luego a través de otras páginas que solo se pueden examinar si el inicio de sesión se realiza correctamente.

Los pasos que estoy tomando para lograr esto se enumeran a continuación.

Cree un servidor proxy Http seleccionando WorkBench> Agregar> Elementos que no son de prueba.Cambiar la configuración de red en Firefox al puerto definido en el servidor proxy Http.Creando unThread Group seleccionando Plan de prueba> Agregar> Subprocesos (Usuarios)> Grupo de subprocesos.CreandoHTTP Request Defaults seleccionando Grupo de subprocesos> Agregar> Elemento de configuración> Valores predeterminados de solicitud HTTP.(a) Ingresando IP para mi servidor remoto enServer Name or IP:
(b) Ingresando la ruta a mi página de inicio de sesión como/MyWebApplication/login.aspxCrearUser Defined Variables seleccionando Grupo de subprocesos> Agregar> Elemento de configuración> Variables definidas por el usuario.

Mi página de inicio de sesión.aspx es muy simple, toma el nombre de usuario y la contraseña de dos cuadros de texto, los combina en la base de datos y, si tiene éxito, los redirecciona a la página Inicio de sesión.aspx.
Mi login.aspx tiene tres controles de servidor solamente, dosasp:TextBox para recibir loginid y contraseña y unaasp:Button Para consultarlos en db.
El id de ellos sontxtLogin, txtPassword, btnLogin respectivamente.

En las variables definidas por el usuario (creadas en el paso 6), agregué admin y 123admin, que son inicios de sesión reales en db que se verificaron en la página login.aspx y, en caso de éxito, están redirigiendo a la página LoginSuccess.aspx.

Variables definidas por el usuario:

Name:          Value    Description
login          admin    
password       123admin 

Estoy agregando dos Extractores de expresiones regulares seleccionando Grupo de subprocesos> Agregar> Postprocesadores> Extractores de expresiones regulares.

He cambiado el nombre de 1st Expression Extractor comoView State Extractor y añadiendo los siguientes datos a ellos:

Reference Name: viewstate
Regular Expression: name="__VIEWSTATE" id="__VIEWSTATE" value="(.+?)"
Template:Me referí a
Match No.(0 for Random): 1
Default Value: ERROR

Del mismo modo, he cambiado el nombre de 2nd Expression Extractor comoEvent Validation Extractor y añadiendo los siguientes datos a ellos:

Reference Name: eventValidation
Regular Expression: name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="(.+?)"
Template:Me referí a
Match No.(0 for Random): 1
Default Value: ERROR

En el paso 5 agregué los siguientes datos.

Send Parameters With the Request:
    Name:             - Value
    txtLogin          - $(login)
    txtPassword       - $(password)
    __VIEWSTATE       - $(viewState)
    __EVENTVALIDATION - $(eventValidation)

Ahora agregué HTTP Cookie Manager seleccionando Thread Group> Add> Config Element> HTTP Cookie Manager.

Ahora agregué el Controlador de grabación seleccionando Grupo de subprocesos> Agregar> Controlador lógico> Controlador de grabación.

Comencé HTTP Proxy Server y luego, usando Firefox, ingresé la URL completa en mi página login.aspx, ingresé admin y 123admin en los dos cuadros de texto, presioné el botón Iniciar sesión y me redirigí con éxito en LoginSuccess.aspx. Detuve el servidor proxy HTTP y cerré mi navegador Firefox.

Ahora he guardado el plan de prueba (que contiene los pasos registrados, solo 2 pasos aquí, 1 para login.aspx y otro para LoginSuccess.aspx) y ejecutando la prueba y viendo el resultado de la prueba en el Árbol de resultados de la vista que devuelve 500 errores el servidor.

No puedo determinar qué ingrediente me falta aquí por lo que no puedo usar JMeter con éxito. Solo he cambiado los valores que se mencionan aquí y para todo lo que no escribí aquí, los valores son de tipo predeterminado comoNo of thread:.

Respuestas a la pregunta(4)

Su respuesta a la pregunta