Les différents types de Break Point dans Visual Studio Code
Dans Visual Studio Code, il existe plusieurs types de Break Point.
- Conditional Breakpoint
- Inline Breakpoint
- Function Breakpoint
- Logpoint
Pour ajouter l’un de ces Break Point, il faut se placer sur la ligne de code et cliquer sur Run
puis New Breakpoint
Pour la mise en situation je vais utiliser ce bout de code
$pathToUse = "C:\MyDev\New folder"
$docs = @(
'chm', 'doc', 'docm', 'docx', 'dot', 'dotx', 'eml', 'eps',
'hwp', 'log', 'm3u', 'odt', 'pages', 'pdf', 'pub', 'rtf',
'sxw', 'txt', 'wpd', ' wps', 'xml', 'xps'
)
$files = Get-ChildItem -Path $pathToUse
Foreach ($x in $files) {
if ($docs.Contains($x.Extension.TrimStart('.').ToLower())) {
New-Item -ItemType Directory -Path $pathToUse -Name "Documents" -ErrorAction Ignore
Move-Item -Path $x.FullName -Destination $pathToUse/"Documents"
}
}
Dans la suite de l’article nous allons passer en revue ces différents types de Break Point.
1 - Conditional Breakpoint
Comme son nom l’indique ce break point va arrêter l’execution du code si la condition qu’on lui définie est vraie.
Pour expliquer le fonctionnement je vais appliquer un Conditional Break Point sur la ligne 12 de mon code.
La condition sera si $x.name
est égal à Stop mon BreakPoint.docx
.
Après avoir saisie la condition appuyer sur Enter
` pour valider.
Ensuite il suffit de lancer le mode debug et de patienter jusqu’à ce que le break point soit atteint. Une fois atteint, l’execution du code se met en pause et si on vérifie la valeur de $x.name
nous verrons que c’est bien Stop mon BreakPoint.docx
.
2 - Inline Breakpoint
Ce type de breakpoint est utilisé quand vous utilisez l’écriture dite inline c’est a dire qu’au lieu de bien indenter votre code, vous l’écrivez sur une seule ligne.
Dans mon code je peux par exemple écrire ca pour afficher le nom de chacun des documents contenus dans mon dossier
Get-ChildItem -Path $pathToUse | ForEach-Object {Write-output $_.Name}
Pour ajouter un Break Point sur la commande Write-Ouput
je vais utiliser les Inline Breakpoint
Pour cela il faut se positionner sur le début de la commande Write-Ouput
et ajouter le Inline Breakpoint en passant par le menu Run
`
Le Inline Breakpoint se matérialise par un point rouge apparraissant a l’endroit de la ligne ou on l’a défini.
On lance le mode debug, qui va stopper en arrivant sur le break point
3 - Function Breakpoint
Ce type de breakpoint permettra d’arrêter l’execution du code à l’appel d’une fonction.
Dans mon code par exemple je peux définir un Function Breakpoint sur l’appelle de la fonction Move-Item
par exemple.
Pour ce faire passer par me menu Run
puis New Breakpoint
et enfin Function Breakpoint
La pallette Breakpoint
apparait et permet de définir le nom de la fonction sur laquelle faire le break point. Saisir le nom de la fonction est faire Enter
Lancer ensuite le mode debug qui va automatiquement se mettre en pause sur la fonction Move-Item
4 - Logpoint
Les logpoint sont une autre variante utile des points d’arrêt. Au lieu de s’introduire dans votre débogueur, ils enregistrent des messages sur votre console et servent d’instructions de trace temporaires
Les logpoint peuvent être un excellent dispositif d’injection lorsque vous déboguez un serveur de production qui ne peut pas être arrêté ou mis en pause
Malheureusement, et sauf erreur de ma part, ils ne sont pas supportés en Powershell