« Anterior - Versión 6/13 (diff) - Siguiente » - Versión actual
Emilio Penna, Martes, 27 de Setiembre de 2022 17:41:00 -0300


Wiki

Currently, this page has information about moodle quiz load tests.

Files for load tests

Attached, in the end of this page, there are the following files:

  • Moodle quiz backup
  • Test users file, for enrollment in the test course
  • Jmeter script for load test (jmx)
  • Users file for jmeter script
  • Image with upload options for users import in moodle

Configuration of the jmeter script

(The script was tested with jmeter 5.4.1)

The script uses plugins, so the plugins-manager.jar is required. It can be downloaded from https://jmeter-plugins.org/install/Install/ and put in the lib/ext directory of jmeter (jmeter restart required).

The parameters for the test are:

1. In "Configuracion del CSV dataset" you have to set the path and name of the users file (usuarios5000.csv)
2. In "plan de pruebas", you have to configure the course id, quiz id and server url.
3. In "valores por defecto para peticion HTTP" set the server url
servidor

In "grupo de hilos original" the threads number and ramp up time can be specified. Start with only 1 thread until the test run with no errors, then try more threads, in an incremental way. In our test we used, up to 2500 threads with a 180 seconds ramp up.

TO DO: The script has "Assertions" for controlling that the server response is what we expect in a successful execution, it works inspecting the html in the response with a pre defined text. We used, for example "Pagina 1 de 8", a text that appears in the bottom of the quiz pages. This text is in spanish, so it works if the language for the users is spanish.
For doing that you can set lang="es" in the mdl_user table, with an update mdl_user set lang='es' where username like 'prueba%';

Comentarios sobre las pruebas

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.

Para correr por linea de comando:

$ ./jmeter -n -t /home/epenna/moodle-quiz3-v1.jmx -l /home/epenna/jmeterout.jtl

PENDIENTES

  • tema assertion, ver alternativa independiente del idioma

moodle-quiz3-v1-ori.jmx - Jmeter script (372,5 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 17:12:58 -0300

users5000.csv - CSV file with users for jmeter script (86,8 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 17:12:58 -0300

usuarios_curso.csv - File with users for enrollment in moodle course (454,7 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 17:24:29 -0300

copia_de_seguridad-moodle2-activity-890-quiz890-20210505-1209-nu.mbz - Moodle quiz backup (34,9 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 17:25:21 -0300

upload-users-options.png - Upload users options - image (45,8 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 17:25:53 -0300

Apuntes-pruebas_3_4_dic.pdf - Report of the tests (in spanish) (574,1 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 17:55:29 -0300

moodlemootglobal22_presentation_udelar2.pdf - Presentation - moodlemoot22 (890,7 KB) Emilio Penna, Martes, 27 de Setiembre de 2022 18:41:53 -0300

reporte-experiencia-emilio2.pdf - Reporte de experiencia para WOPR Chile 2023 (957,8 KB) Emilio Penna, Viernes, 10 de Noviembre de 2023 10:34:25 -0300