Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 25 Próxima »

Debug ( ou depuração, em português) é o processo de encontrar e reduzir defeitos num software, por meio de uma análise detalhada do código. No cronapp é possível debugar os blocos de programação, tanto cliente quanto servidor. Veja abaixo como:

Pré-requisitos

Antes de começar é necessário ter certeza de que se possui um ambiente preparado para a realização do exemplo. Abaixo estão os principais requisitos necessários.

Requisitos:

  1. Projeto do tipo web ou web-mobile criado. Caso haja dúvidas em relação a como criar esse tipo de projeto acesse o link (Criar novo projeto).
  2. Navegador Google Chrome instalado.

Debug em blocos cliente

Nesse tutorial vamos aprender a maneira de debugar blocos cliente. Primeiramente, precisamos verificar se o arquivo index.html da pasta mobileapp está com o arquivo cronapi.js em sua versão minificada (cronapi.min.js). Para isso, acesse o caminho mostrado na figura abaixo (figura 1) e abra o arquivo index.html. Em seguida localize a tag script (<script>) que possui plugins/cronapi-js/dist/cronapi.min.js e substitua o termo "cronapi.min.js" por "cronapi.js" (sem aspas) e salve o arquivo.


Figura 1 - Arquivo index.html de mobileapp


Agora já podemos debugar os blocos cliente em nosso navegador, para isso vamos precisar ter um bloco de programação criado, caso você não saiba como criar um bloco de programação clique aqui (criar blocos de programação). Em nosso exemplo foi utilizado um bloco que recebe dois parâmetros e realiza a operação de multiplicação entre eles (figura 1.2).


Figura 1.2 - Calculo realizado no bloco


Figura 1.3 - Estrutura do bloco


Para debugar o código, é necessário rodar o projeto em modo debug e executa-lo no google chrome. Com o projeto rodando em modo debug no chrome aperte a tecla F12 para abrir a ferramenta de desenvolvedor do navegador (DevTools) conforme a figura abaixo (figura 1.4).  Após isso, aperte as teclas Ctrl + P e digite o nome do seu bloco de programação (multiplicacao.blocky em nosso exemplo) (figura 1.5), em seguida selecione-o dentre os resultados.


Figura 1.4 - Ferramenta do desenvolvedor do google chrome(DevTools)


Figura 1.4 - Bloco de programação no DevTools 


Depois de selecionar o bloco desejado precisamos pôr um breakpoint (ponto de pausa) em nosso código, para isso deve-se clicar no número que representa a linha desejada. Neste exemplo, vamos clicar no número que representa a linha 11 para que o código pause nessa linha, dessa forma estamos dizendo ao devtools que queremos analisar o código com mais detalhes a partir daquela linha ( linha 11 ) e ao chamar esse bloco dentro da aplicação (rodando em modo debug) uma janela com as opções de debug irá aparecer. Nesse exemplo, definimos como parâmetro os números 4 e 6. 


Figura 1.5 - Código do bloco sendo depurado (modo debug)


Para debugar o código precisamos utilizar os botões de comando, esses botões são usados para definir quais caminhos devemos prosseguir durante a analise do código. É possível também visualizar o valor das variáveis durante o debug, para isso podemos ver os valores exibidos ao lado do comando no código ou passando o mouse sob a variável. Os botões de comando, respectivamente, são:


Figura 1.6 - Botões de comando


  1. Resumir a execução do script: Executa todo o código restante sem a necessidade de depuração.
  2. Pular a próxima função: Ignora uma função e pula para o próximo passo.
  3. Pular para a próxima função: Ignora os comandos e pula para a próxima chamada de função.
  4. Sair da função atual: Sai da função corrente e avança para o próximo comando.
  5. Próximo passo: Executa o próximo comando.
  6. Desativar breakpoints: Desabilita todos os breakpoints da aplicação, e ignora-os quando as funções são chamadas.
  7. Pausar em exceções: Deixa o código em modo debug caso alguma exceção seja encontrada.

Debug em blocos servidor

Nesse segundo exemplo vamos aprender a depurar blocos servidor. Os blocos servidor são debugados dentro do cronapp, logo o processo com esse bloco é mais simples. Em nosso tutorial vamos depurar um bloco servidor que recebe dois parâmetros e realiza uma soma entre eles (Figura 2), caso não saiba como criar um bloco clique aqui (criando blocos de programação).


Figura 2 - Bloco servidor que realiza função soma


Depois de criar o bloco servidor observe que dois arquivos são gerados ( .blocky e .java) (figura 2.1), entretanto ao realizar o debug apenas o arquivo .java é utilizado, pois precisamos nesse momento acessar diretamente o código fonte do bloco. Por fim, abra o arquivo .java através do caminho mostrado abaixo (figura 2.1).


Figura 2.1 - Arquivos gerados após criar um bloco servidor


Após abrir o arquivo, vamos definir a partir de qual linha o código será analisado com mais detalhes. Para isso, passe o mouse a esquerda do número da linha e um ponto vermelho irá aparecer. Para definir o local desejado como breakpoint, clique no ponto vermelho que então a linha referente ao ponto será marcada (figura 2.2).


Figura 2.2 - Arquivos gerados após criar um bloco servidor


Nesse momento, já podemos depurar o nosso bloco. Para isso, basta chamar o bloco durante a execução do sistema em modo debug que ao entrar no código do bloco, a execução será pausada e a depuração iniciada. Para prosseguir com o debug do bloco é necessário utilizar os botões de comando (figura 2.3), são eles, respectivamente: 


Figura 2.3 - Botões de comando bloco servidor



  1. Prosseguir execução: Executa todo o código restante sem a necessidade de depuração.
  2. Próximo passo: Executa o próximo comando.
  3. Entrar: Entra na próxima função.
  4. Sair: Sai da função corrente e avança para o próximo comando.


É possível visualizar os valores das variáveis durante o debug, basta passar o mouse sob a variável e um menu com várias informações sobre ela irá aparecer. Após isso, basta expandir a propriedade object que é possível ver o valor atual da variável. O bloco abaixo recebeu dois parâmetros (1 e 2) e a variável item recebeu o resultado da soma entre eles. Por fim, é possível ver o valor da variável item durante o debug abaixo (figura 2.4). 


Figura 2.4 - Botões de comando bloco servidor



  • Sem rótulos