Wiki
Versión 6 (Emilio Penna, Martes, 27 de Setiembre de 2022 17:41:00 -0300)
| 1 | 1 | h1. Wiki |
|
|---|---|---|---|
| 2 | 1 | ||
| 3 | 6 | Emilio Penna | Currently, this page has information about moodle quiz load tests. |
| 4 | 2 | Emilio Penna | |
| 5 | 1 | ||
| 6 | 6 | Emilio Penna | h2. Files for load tests |
| 7 | 1 | ||
| 8 | 6 | Emilio Penna | Attached, in the end of this page, there are the following files: |
| 9 | 2 | Emilio Penna | |
| 10 | 1 | ||
| 11 | 6 | Emilio Penna | * Moodle quiz backup |
| 12 | 6 | Emilio Penna | * Test users file, for enrollment in the test course |
| 13 | 6 | Emilio Penna | * Jmeter script for load test (jmx) |
| 14 | 6 | Emilio Penna | * Users file for jmeter script |
| 15 | 6 | Emilio Penna | * Image with upload options for users import in moodle |
| 16 | 2 | Emilio Penna | |
| 17 | 1 | ||
| 18 | 6 | Emilio Penna | h2. Configuration of the jmeter script |
| 19 | 2 | Emilio Penna | |
| 20 | 2 | Emilio Penna | |
| 21 | 6 | Emilio Penna | (The script was tested with jmeter 5.4.1) |
| 22 | 2 | Emilio Penna | |
| 23 | 6 | Emilio Penna | 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). |
| 24 | 2 | Emilio Penna | |
| 25 | 6 | Emilio Penna | The parameters for the test are: |
| 26 | 2 | Emilio Penna | |
| 27 | 6 | Emilio Penna | 1. In "Configuracion del CSV dataset" you have to set the path and name of the users file (usuarios5000.csv) |
| 28 | 6 | Emilio Penna | 2. In "plan de pruebas", you have to configure the course id, quiz id and server url. |
| 29 | 6 | Emilio Penna | 3. In "valores por defecto para peticion HTTP" set the server url |
| 30 | 6 | Emilio Penna | servidor |
| 31 | 2 | Emilio Penna | |
| 32 | 6 | Emilio Penna | 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. |
| 33 | 1 | ||
| 34 | 6 | Emilio Penna | 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. |
| 35 | 6 | Emilio Penna | 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%'; |
| 36 | 2 | Emilio Penna | |
| 37 | 2 | Emilio Penna | |
| 38 | 1 | ||
| 39 | 2 | Emilio Penna | h2. Comentarios sobre las pruebas |
| 40 | 2 | Emilio Penna | |
| 41 | 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. |
| 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 |