Interface do usuário do painel VTS

O VTS Dashboard fornece uma interface de usuário coesa que usa o design de material para exibir com eficiência informações sobre resultados de teste, criação de perfil e cobertura. O estilo do painel usa bibliotecas Javascript de código aberto, incluindo Materialize CSS e jQueryUI para processar dados entregues por servlets Java no Google App Engine.

Painel inicial

A página inicial do Dashboard exibe uma lista de suítes de teste que um usuário adicionou aos favoritos.

Figura 1. Painel do VTS, página inicial.

Nessa lista, os usuários podem:

  • Selecione um conjunto de testes para visualizar os resultados desse conjunto.
  • Clique em MOSTRAR TODOS para visualizar todos os nomes de teste VTS.
  • Selecione o ícone Editar para modificar a lista de Favoritos.
    Figura 2. Painel VTS, edição da página Favoritos.

Resultado dos testes

Os resultados do teste exibem as informações mais recentes sobre o conjunto de testes selecionado, incluindo uma lista de pontos de criação de perfil, uma tabela de resultados de caso de teste em ordem cronológica e um gráfico de pizza exibindo a divisão do resultado da execução mais recente (os usuários podem carregar dados mais antigos paginando à direita ).

Figura 3. Painel do VTS, resultados do teste.

Os usuários podem filtrar dados usando consultas ou modificando o tipo de teste (pré-envio, pós-envio ou ambos). As consultas de pesquisa oferecem suporte a tokens gerais e qualificadores específicos de campo; os campos de pesquisa suportados são: ID de compilação do dispositivo, ramificação, nome de destino, nome do dispositivo e ID de compilação de teste. Estes são especificados no formato: FIELD-ID =" SEARCH QUERY ". As aspas são usadas para tratar várias palavras como um único token para corresponder aos dados nas colunas.

Criação de perfil de dados

Os usuários podem selecionar um ponto de criação de perfil para obter uma exibição interativa dos dados quantitativos desse ponto em um gráfico de linha ou histograma (exemplos abaixo). Por padrão, a exibição exibe as informações mais recentes; os usuários podem usar o seletor de data para carregar janelas de tempo específicas.

Figura 4. Painel do VTS, desempenho do gráfico de linha.

Os gráficos de linha exibem dados de uma coleção de valores de desempenho não ordenados, que podem ser úteis quando um teste de desempenho produz um vetor de valores de desempenho que variam em função de outra variável (por exemplo, taxa de transferência versus tamanho da mensagem).

Figura 5. Painel VTS, desempenho do histograma.

Cobertura de teste

Os usuários podem visualizar as informações de cobertura no link percentual de cobertura nos resultados do teste.

Figura 6. Painel VTS, porcentagens de cobertura.

Para cada caso de teste e arquivo de origem, os usuários podem visualizar um elemento expansível contendo código-fonte codificado por cores de acordo com a cobertura fornecida pelo teste selecionado:

Figura 7. Painel VTS, código-fonte de cobertura.
  • As linhas descobertas são destacadas em vermelho .
  • As linhas cobertas são destacadas em verde .
  • As linhas não executáveis ​​não são coloridas .

As informações de cobertura são agrupadas em seções dependendo de como foram fornecidas em tempo de execução. Os testes podem carregar a cobertura:

  • Por função . Os cabeçalhos das seções têm o formato "Cobertura: FUNCTION-NAME ".
  • In Total (fornecido no final da execução do teste). Apenas um cabeçalho está presente: "Cobertura: Todos".

O Dashboard busca o código-fonte do lado do cliente de um servidor, que usa o Gerrit REST API de código aberto.

Monitoramento e teste

O VTS Dashboard fornece os seguintes monitores e testes de unidade.

  • Alertas de e-mail de teste . Os alertas são configurados em um trabalho Cron que é executado em um intervalo fixo de dois (2) minutos. A tarefa lê a tabela de status do VTS para determinar se novos dados foram carregados em cada tabela, verificando se o carimbo de data/hora de upload de dados brutos do teste é mais recente do que o carimbo de data/hora da última atualização de status. Se o carimbo de data/hora do upload for mais recente, a tarefa consultará novos dados entre agora e o último upload de dados brutos. Novas falhas de casos de teste, falhas contínuas de casos de teste, falhas transitórias de casos de teste, correções de casos de teste e testes inativos são determinados; esta informação é então enviada em formato de e-mail para os assinantes de cada teste.
  • Saúde do serviço da Web . O Google Stackdriver integra-se ao Google App Engine para fornecer monitoramento fácil do VTS Dashboard. Verificações simples de tempo de atividade verificam se as páginas podem ser acessadas enquanto outros testes podem ser criados para verificar a latência em cada página, servlet ou banco de dados. Essas verificações garantem que o Painel esteja sempre acessível (caso contrário, um administrador será notificado).
  • Análise . Você pode integrar uma página do VTS Dashboard com o Google Cloud Analytics especificando um ID do Analytics válido na configuração da página (o arquivo pom.xml). A integração fornece uma análise mais robusta do uso da página, interação do usuário, localidade, estatísticas de sessão, etc.