View on GitHub

aulas-programacao-csharp

Materiais de Aula - Programação de Computadores com C#

Depuração (debug)

📽 Veja esta vídeo-aula no Youtube

Permite que se acompanhe a execução do programa passo-a-passo, visualizando os valores de suas variáveis e avaliando expressões.

É utilizado principalmente para investigação e correção de bugs.

Configuração do VsCode

As opções do depurador ficam na aba Run:

O método Launch deve estar selecionado.

O console interno do depurador não é compatível com entrada via teclado. Devemos configurar o depurador para utilizar o terminal integrado do VsCode. Para isso, abra o arquivo de configuração launch.json clicando no ícone indicado:

Altere a opção console de internalConsole para integratedTerminal.

Antes:

Depois:

Suas configurações ficam salvas em .vscode/launch.json.

Pontos de parada (breakpoints)

Você deve incluir pelo menos um ponto de parada para o depurador. Sem eles, seu programa executará até o final sem que você possa interagir.

Podemos adicionar breakpoints clicando ao lado dos números de linha.

No exemplo, o depurador parará nas linhas 41, 44 e 46.

A janela Breakpoints permite que você veja os pontos de parada configurados:

Na maioria dos casos simples você pode colocar um breakpoint na primeira linha do método Main, permitindo que você acompanhe toda a execução do programa.

Iniciando a depuração

Para executar o programa em modo de depuração clique no ícone de execução:

A barra de status ficará vermelha:

Surgirá um menu de depuração no canto superior direito:

A janela Variables mostrará todas as variáveis acessíveis no ponto atual de execução, com seus valores:

O depurador executará até encontrar o primeiro breakpoint.

Agora você pode controlar a sequência dos próximos comandos.

Executando trechos de código

Para ir até o próximo breakpoint utilize a opção Continue ou pressione F5:

Para executar uma linha por vez, utilize a opção Step Over ou pressione F10:

As demais opções são:

Inspecionando o programa

Você pode analisar os valores atuais das variáveis de diversas maneiras.

Variables

A lista de variáveis disponíveis está em Variables. Você pode inclusive alterá-los diretamente utilizando a opção Set Value.

Cursor sobre a variável, no código

Ao passar o cursor sobre uma variável, você verá o seu valor atual.

Watches

A janela Watches permite que você crie expressões a serem avaliadas automaticamente pelo depurador.

Você pode colocar uma variável ou uma expressão contida no seu código selecionando-a e clicando na opção Add to watch:

Você também pode observar o valor de uma expressão que não existe no seu código, criando-a diretamente na janela Watches:

Use e abuse da depuração. Ela é a melhor amiga do programador.

Possíveis problemas

Notificação de recursos requeridos (required assets)

Após abrir um projeto no vscode, é comum que ele exiba uma notificação como a abaixo:

Se você clicar em Yes, ele adicionará o arquivo .vscode/launch.json para o seu projeto, assim como qualquer outro artefato que o auxilie nesta tarefa.

Bibliotecas recém instaladas

Ao configurar a depuração pela primeira vez no seu vscode, ele poderá baixar pacotes automaticamente, como o .NET Core Debugger para que você possa fazer a depuração.