Depuração remota em dispositivos Android

Saiba como fazer depuração remota de aplicações e páginas web do seu dispositivo Android em seu computador

--

Foto de computador, mouse, uma xicara de café e um dispositivo móvel em cima de agenda por Freepick
Foto de espaço de trabalho por Freepick

Introdução

A ferramenta de inspeção é uma boa prática utilizada para visualização de elementos da página, ou debug. Ela é utilizada para entender o comportamento de uma página em um sentido amplo e é reconhecida como uma ferramenta de desenvolvimento web. Ao inspecionar, temos acesso aos seguintes recursos:

  • Aos elementos DOM (Document Object Model)
  • O Console, para vermos as respostas e comportamentos do sistema
  • Às APIs trabalhadas na página
  • À conexão e suas devidas simulações de velocidade alta, baixa e offline
  • Ao visualizador de cache do sistema e armazenamento de dados
  • E muitos outros…

Afinal, como podemos inspecionar uma página?

Para atingirmos camadas mais profundas ao testar nossas aplicações web e páginas web realizamos a inspeção da página. Para isso acontecer, devemos realizar uma das seguintes ações:

  • Clicar com o botão direito do mouse na página e selecionar ‘Inspecionar’
  • Apertar o botão F12 de seu teclado
  • Realizar o comando ‘Ctrl + Shift + I’
  • Na tela do navegador, clicar nos três pontos em coluna no canto superior direito de sua tela > Mais ferramentas > Ferramentas do desenvolvedor.

Teremos então um ambiente com a semelhança da imagem a seguir:

Imagem da página principal do Google sendo inspecionada. Temos ao lado esquerdo a página do Google e ao lado direito a inspeção com todas as suas abas.
Página principal do Google sendo inspecionada

No Dev Tools conseguimos ainda simular, deixando em um modo responsivo, como ficaria o Front da página em um dispositivo móvel. Para isso realizamos os seguintes passos:

  1. Clicamos no botão ‘Toogle Device Toolbar’ destacado em vermelho na imagem abaixo:
Imagem do botão Toggle Device Toolbar, este sendo encontrado ao inspecionar uma página.
Botão Toggle Device Toolbar, marcado em vermelho

2. Será apresentada a página com um menu superior. Podemos simular vários dispositivos, aumentar ou diminuir zoom, simular dispositivos com processamentos simples e intermediários, conexão offline e botão de rotação de tela. Ao clicarmos nos três pontos em vertical à direita podemos incluir o frame do dispositivo, como na imagem a seguir:

Imagem de página do Google simulando tela no dispositivo Moto G4, com tamanho e porcentagem de zoom, combobox de dispositivo com processamento simples ou intermediários e opção de conexão offline, e rotação de tela. Menu superior destacado em vermelho.
Simulando um dispositivo ao inspecionar uma devida página.

Que beleza. Então testando dessa forma eu já tenho os mesmos resultados em um dispositivo mobile?

Não, muito longe disso.

Sobre as fazendas de testes mobile…

As fazendas (ou device farms) nos dão um maior alcance de dispositivos e versões. Logo, conseguimos verificar a funcionalidade de uma aplicação ou página web e temos como exemplo o BrowserStack, Kobiton, Sauce Labs e outros. A maioria delas nos dá um tempo de uso grátis para conhecer, se ambientar e até mesmo utilizar alguns poucos dispositivos liberados, mas são pagas.

Beleza, mas será que também conseguimos testar com nossos dispositivos, ou seja, ter a mesma sensação de uso que nosso cliente?

A resposta é sim!

Exemplo de uso de Depuração Remota de dispositivos móveis

Tentando simular ao máximo o ambiente de nossos usuários em uma aplicação ou página web chegamos agora na inspeção de um dispositivo móvel, sendo mais uma ferramenta para testes funcionais e não funcionais. Aqui analisaremos o navegador Android do dispositivo.

Para realização deste artigo o seguinte cenário foi utilizado:

  • Sistema operacional Windows 10
  • Navegador Google Chrome versão 91.0
  • Dispositivo móvel Xiaomi Redmi 8
  • Android versão 9

E como fazer isso? Confira os passos a seguir:

Passo 1 — Em seu dispositivo móvel, liberar a opção de desenvolvedor

Para liberarmos a opção de desenvolvedor no dispositivo Android devemos acessar ‘Configurar’ > ‘Sobre o dispositivo’ e na versão do dispositivo. Toque 7 vezes em cima do número da versão.

Após realizar essa operação no dispositivo citado foi apresentado ao final de ‘Configurações adicionais’ o acesso a ‘Opções do desenvolvedor’:

Em configurações adicionais as ‘Opções do desenvolvedor’
No dispositivo móvel, buscar ‘Opções do desenvolvedor’

Ao acessar a opção “Depuração”, ativar ‘Depuração USB’ como na imagem a seguir:

Ao acessar ‘Opções do desenvolvedor’ ativamos a opção ‘Depuração USB’
Ativar ‘Depuração USB’

Dica importante:

Cada modelo pode ter um jeito diferente de habilitar a opção de desenvolvedor. Logo, realize uma pesquisa voltada para seu dispositivo.

Passo 2 — Conecte o dispositivo em seu computador

Para conectar o dispositivo ao computador, devemos ter um conector do dispositivo com saída USB. Ao conectar, será apresentada a informação de ‘Depuração USB conectada’ e não use o USB para transferência de dados.

Imagem de dispositivo móvel conectado a um computador via USB, por Freepick
Dispositivo móvel conectado a um computador por Freepick

Passo 3 — Abra a aplicação web ou página a ser acessada no dispositivo móvel

Em seu dispositivo abra o seu navegador mobile, sendo no cenário apresentado o Chrome. Vamos acessar a página principal do Google.

Imagem de visualização da página do Google no dispositivo móvel
Imagem de visualização da página do Google no dispositivo móvel

Passo 4 — Encontrar a página de inspeção no seu navegador

Como utilizamos o navegador Chrome no dispositivo devemos também utilizar o Chrome em nosso computador. Ao abrirmos o navegador digitamos ‘chrome://inspect/#devices’ na barra de navegação, na qual nos apresentará na aba ‘Devices’ o devido dispositivo com o serial e, abaixo, a devida página acessada.

Para realizarmos a depuração, selecionamos a página e clicamos em ‘inspect’ como identificado na imagem a seguir:

Imagem do DevTools para dispositivos móveis, apresentando a aba ‘Device’ com o nome do dispositivo, descrição ‘Chrome’ e sua devida versão, e abaixo a página acessada com as opções Inspect, Pause, Focus Tab, Reload e Close.
Menu do DevTools para seleção de dispositivos e abas

Uma nova aba será aberta e, então, poderemos realizar a inspeção da aplicação ou página web. Ao manusearmos a página, seja trocando de página e realizando ações no dispositivo, teremos o resultado imediato sendo apresentado. Poderemos realizar ações tanto no dispositivo quanto na tela.

Apresentação do dispositivo móvel com a página do Google ao lado esquerdo no DevTools, apresentado no lado direito a inspeção da página no dispositivo. Observação: Notificações e janela de aplicativos não serão apresentadas, somente a aba selecionada para inspeção.
DevTools para dispositivos móveis

Dúvida: Mas isso só funciona no Chrome?

Não, e que bom que não!

Funcionamento em outros navegadores

Para o acesso à depuração remota Mobile no Edge ou no Brave:

  • Acessar uma devida página pelo Edge ou Brave no dispositivo Android;
  • Em sua máquina, no mesmo navegador de acesso, digitar na barra de navegação ‘navegador://inspect/#devices’, trocando a palavra navegador por ‘edge’ ou ‘brave’;
  • A usabilidade é muito parecida com a do Chrome, com diferenças mínimas. Em ambos casos será apresentado como no dispositivo, podendo ser manuseado pelo computador.

Para o acesso à depuração remota Mobile do Mozilla Firefox:

  • Acessar uma devida página no Firefox no dispositivo Android;
  • Em sua máquina, no mesmo navegador de acesso, podemos ou digitar na barra de navegação ‘about:debugging’ ou também acessar o menu do navegador e acessar Mais Ferramentas > Depuração Remota;
  • À esquerda da tela teremos o seu dispositivo conectado, então clicaremos no botão ‘conectar’ e depois no dispositivo.
  • Teremos a versão de seu navegador, todas as abas abertas e algumas extensões utilizadas. Para Inspecionar uma aba clique em ‘Inspecionar’ ao lado da aba desejada.

Observação:

No Mozilla não será apresentada a tela do dispositivo, sendo essa a única diferença do Firefox para outros navegadores.

Conclusão

Concluímos que a depuração de aplicações e páginas web pode ser uma ferramenta a mais trazendo uma série de benefícios como:

  • Testar com nosso próprio dispositivo ou outros dispositivos acessíveis, desde que sejam Android;
  • Aumentar nosso range de testes exploratórios baseados em hipóteses, dado que estamos mais próximos de como nosso cliente usará seu dispositivo;
  • Aumentar a gama de testes não funcionais, testando uma aplicação ou página web em diferentes navegadores, com muitos aplicativos abertos, grande quantidade de cache, tempo de resposta dada a conexão, rotação de tela e outros;
  • Teremos todo o aparato de inspeção como informada no início desse artigo para diferentes navegadores, identificando diferentes comportamentos.
  • Possibilidade de encontrarmos falta de suporte dos diferentes navegadores, dada diferentes versões de navegadores, em uma novidade ou descontinuidade na linguagem de programação utilizada, afetando assim no funcionamento da aplicação ou página web. Exemplo, em um dado projeto utilizarmos um componente do EcmaScript mais recente, sendo que o Chrome tem suporte e no Edge não.

E lembrando que é possível utilizarmos heurísticas, como a ALTER FACE, de Júlio de Lima, e a T-PAIN, de Rafael Bandeira, para nos auxiliar a ter melhores resultados!

Fontes bibliográficas:

Gostaria de agradecer a todos os amigos e familiares, a todos que trabalham comigo e também a Cristhiane Jacques, Gabriel Santos e Tainara Reis pela contribuição no artigo!

--

--

Vinicius Oliveira
Revista eQAlizando (antiga Revista TSPI)

QA at CI&T. A Lifelong Learning lover trying to be, every day, better than yesterday. Like the winter, a new article is comming!!