Wiki

Versión 5 (Emilio Penna, Martes, 23 de Agosto de 2022 17:49:47 -0300)

1 1
h1. Wiki
2 1
3 1
SITIO EN CONSTRUCCIÓN
4 2 Emilio Penna
5 2 Emilio Penna
6 2 Emilio Penna
7 2 Emilio Penna
8 2 Emilio Penna
h2. Archivos para pruebas de performance
9 2 Emilio Penna
10 2 Emilio Penna
En el adjunto, datos-para-pruebas-perf-moodle-20210908a.tar.gz se encuentra:
11 4 Emilio Penna
* respaldo de quiz moodle para las pruebas 
12 5 Emilio Penna
* script jmeter (jmx)
13 2 Emilio Penna
* usuarios_curso.csv (usuarios del curso)
14 2 Emilio Penna
* upload-user-options.png (opciones que hay que poner para cargar los usuarios de prueba) 
15 2 Emilio Penna
* users5000.csv (usuarios para jmeter)
16 2 Emilio Penna
17 2 Emilio Penna
18 2 Emilio Penna
19 2 Emilio Penna
h2. Configuración del script jmeter
20 2 Emilio Penna
21 2 Emilio Penna
El script se probó con jmeter 5.4.1.
22 2 Emilio Penna
El script usa unos plugins, hay que descargar el plugins-manager.jar de https://jmeter-plugins.org/install/Install/ y ponerlo en el directorio lib/ext de jmeter, luego reiniciarlo.
23 2 Emilio Penna
24 2 Emilio Penna
Hay que configurarle el servidor y algunos parametros:
25 2 Emilio Penna
26 2 Emilio Penna
1. En "Configuracion del CSV dataset" ajustar la ruta al archivo de usuarios que adjunto.
27 2 Emilio Penna
2. En plan de pruebas, ajustar el id de curso, de quiz y la url del servidor
28 2 Emilio Penna
3. En "valores por defecto para peticion HTTP" ajustar la url del servidor
29 2 Emilio Penna
30 2 Emilio Penna
En "grupo de hilos original" ajustar la cantidad de hilos y el tiempo de ramp up. En nuestras pruebas usabamos por ejemplo 2000 hilos (2000 usuarios) y un ramp up de 180 segundos.
31 2 Emilio Penna
32 1
Algo que les comento es que el script tiene "assertions" donde compara fragmentos del html recibido para saber si la respuesta fue correcta. Esos fragmentos es posible que difieran con su ambiente, así que capaz hay que ajustar algo de eso.
33 2 Emilio Penna
34 4 Emilio Penna
Nota: los usuarios de prueba tienen que tener lang="es" en la tabla mdl_user, pues compara textos en los assertions y si está en inglés no matchea, eso lo pueden ajustar con update mdl_user set lang='es' where username like 'prueba%';
35 2 Emilio Penna
36 2 Emilio Penna
37 1
38 2 Emilio Penna
h2. Comentarios sobre las pruebas
39 2 Emilio Penna
40 4 Emilio Penna
Para correr el script, hemos observado que el máximo son unos 1500-2000uv por cliente (pc que ejecuta el script y envia los pedidos), si la exigen demasiado les va a dar errores pero puede ser porque el cliente no lo soporta, en ese caso hay que ejecutar en más de un cliente.
41 2 Emilio Penna
42 2 Emilio Penna
43 2 Emilio Penna
Para correr por linea de comando: 
44 2 Emilio Penna
45 2 Emilio Penna
<pre>
46 2 Emilio Penna
$ ./jmeter -n -t /home/epenna/moodle-quiz3-v1.jmx -l /home/epenna/jmeterout.jtl
47 2 Emilio Penna
</pre>
48 2 Emilio Penna
49 2 Emilio Penna
50 2 Emilio Penna
h2. PENDIENTES
51 2 Emilio Penna
52 3 Emilio Penna
* tema assertion, ver alternativa independiente del idioma