Wiki

Versión 3 (Emilio Penna, Martes, 23 de Agosto de 2022 17:47:14 -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 2 Emilio Penna
* quiz para las pruebas (no usar este, usar otro mas reciente que se menciona más adelante)
12 2 Emilio Penna
* script 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
Dado que daba errores el quiz al importarlo en un moodle 3.9, se adjunta un nuevo respaldo del quiz.
18 2 Emilio Penna
19 2 Emilio Penna
20 2 Emilio Penna
h2. Configuración del script jmeter
21 2 Emilio Penna
22 2 Emilio Penna
El script se probó con jmeter 5.4.1.
23 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.
24 2 Emilio Penna
25 2 Emilio Penna
Hay que configurarle el servidor y algunos parametros:
26 2 Emilio Penna
27 2 Emilio Penna
1. En "Configuracion del CSV dataset" ajustar la ruta al archivo de usuarios que adjunto.
28 2 Emilio Penna
2. En plan de pruebas, ajustar el id de curso, de quiz y la url del servidor
29 2 Emilio Penna
3. En "valores por defecto para peticion HTTP" ajustar la url del servidor
30 2 Emilio Penna
31 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.
32 2 Emilio Penna
33 2 Emilio Penna
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.
34 2 Emilio Penna
35 2 Emilio Penna
Otra cosa: 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%';
36 2 Emilio Penna
37 2 Emilio Penna
38 2 Emilio Penna
39 2 Emilio Penna
h2. Comentarios sobre las pruebas
40 2 Emilio Penna
41 2 Emilio Penna
Otra cosa: 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.
42 2 Emilio Penna
43 2 Emilio Penna
44 2 Emilio Penna
Para correr por linea de comando: 
45 2 Emilio Penna
46 2 Emilio Penna
<pre>
47 2 Emilio Penna
$ ./jmeter -n -t /home/epenna/moodle-quiz3-v1.jmx -l /home/epenna/jmeterout.jtl
48 2 Emilio Penna
</pre>
49 2 Emilio Penna
50 2 Emilio Penna
51 2 Emilio Penna
h2. PENDIENTES
52 2 Emilio Penna
53 3 Emilio Penna
* tema assertion, ver alternativa independiente del idioma