Débogage d'un script Matlab

Abordons le débogage d'un script sous Matlab.

Qu'entend-on par débogage ? Il s'agit de l'opération visant à détecter et corriger les erreurs présentes dans un script. Le mot "bug" désigne une anomalie ou une erreur dans le code. Cette appellation trouve son origine dans les débuts de l'informatique où un insecte, littéralement un "bug", pouvait provoquer des pannes dans les machines. Si cette anecdote appartient désormais au passé, le terme "bug" demeure pour évoquer une défaillance logicielle.

Comment donc procéder au débogage sous Matlab ? L'une des méthodes consiste à utiliser la commande "keyboard".

keyboard

Cette commande agit comme un point d'arrêt, suspendant l'exécution du script, ce qui permet d'inspecter ou de modifier les variables d'environnement.

C'est un outil précieux pour le débogage et les tests. Une fois cette commande activée, diverses manipulations sont possibles.

Comment se manifeste la commande "keyboard" ?

Lorsque Matlab rencontre cette instruction, il interrompt l'exécution du script et affiche une invite de débogage.

Cette invite se présente ainsi :

k>>

À partir de là, diverses actions sont envisageables, comme la consultation ou la modification des variables en cours d'exécution.

Après avoir effectué les ajustements nécessaires, la commande dbcont permet de reprendre l'exécution du script.

Il est également possible d'utiliser dbstep pour exécuter la prochaine instruction du script pas à pas.

Pour quitter le mode débogage et stopper le script, la commande "dbquit" est à votre disposition. Le script ne reprendra alors pas son exécution.

Illustrons cela avec un exemple.

Considérons le script suivant :

x=2;
y=3;
disp(x+y)

En l'exécutant, la sortie affiche :

5

Si nous introduisons la commande "keyboard" avant l'instruction d'affichage, le script devient :

x=2;
y=3;
keyboard
disp(x+y)

À l'exécution, le script se suspend à l'apparition de "keyboard", faisant apparaître l'invite de débogage.

k>>

Si vous travaillez avec l'interface graphique de Matlab, les commandes de débogage sont visibles en haut de la fenêtre, permettant notamment de poursuivre l'exécution ou de procéder étape par étape.
Débogage via l'interface graphique de Matlab

Depuis l'invite de débogage, il est possible de réaffecter une valeur à la variable "x". Par exemple, en saisissant x=4.

k>> x=4

En lançant ensuite la commande dbcont, l'exécution du script reprend.

k>> dbcont

Le script, reprenant son cours, utilise désormais x=4 et y=3, produisant le résultat x+y=7.

7

Cette méthode offre la flexibilité de modifier les variables et paramètres en cours d'exécution.

Elle est idéale pour traquer les erreurs, tester des solutions ou optimiser l'efficacité d'un script sans modifier continuellement le code source.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Scripts Matlab