Avançar para o conteúdo

Como criar Testes de Validação de Dados

Porque criar Testes de Validação de Dados?

  • Garantir a confiabilidade no código ou processo
  • Garantir que a lógica funciona como o esperado
  • Garantir que os usuários finais terão dados precisos para auxiliar a tomada de decisão
  • Aumentar as chances de sucesso definidas em conjuntos com a equipe de negócio
  • Criar confiança nos tratamentos de dados e nos resultados finais, por parte de toda a equipe
  • Auxiliar no processo de documentação de regras de negócio e detalhes importantes para manutenção da lógica
  • Reduzir o tempo de investigação de causa raiz de bugs ou erros identificados
  • Auditar as alterações

Como criar um bom teste de validação de dados?

De acordo com o dbt, testes de validação de dados devem ser:

  • Automatizados, de forma a ser possível repeti-los com pouco esforço
  • Rápidos, de forma que o tempo para a sua realização não seja um impedimento
  • Confiáveis, de forma que o resultado final confirme se o processo funciona ou não
  • Informativos, de forma a oferecer indicações para solucionar o problema de acord com o tipo de erro
  • Objetivos, de modo a avaliar apenas uma condição por teste




O que se deve validar com os testes

  • Testes na base de dados: o que cada coluna deve conter, granularidade, particularidades de cada tabela
  • Testes de como uma base de dados se relaciona com outra: geralmente, se compara uma base de dados modificada com a sua versão mair “crua” possível, de modo a averiguar possíveis problemas de qualidade de dados ou erros em transformações e ligações
  • Testes específicos: avaliar condições particulares ao modelo de dados ou ao modelo de negócio
  • Testes de atualização dos dados: avaliar a frequência com que os dados são atualizados e se os processos estão a correr com a última versão disponível

Exemplos de Testes para Validação de Dados

  • Comparar valores de um modelo em relação a outro modelo de origem
  • Comparar a quantidade de linhas entre modelos para garantir que nenhuma linha tenha sido adicionada ou removida
  • Avaliar a data/hora de atualização dos dados e, se necessário, notificar o atraso
  • Garantir a manutenção de uma lógica particular do negócio. Por exemplo: valor total é a soma de valor do produto e taxas.
  • Garantir que determinados pressupostos estão sendo seguidos, aumentando, também, a qualidade de dados. Por exemplo: entradas de dinheiro não podem ter valores negativos; quantidade de artigo em estoque deve ser um número inteiro, etc.
  • Avaliar valores nulos e únicos
  • Definir valores ou tipos de dados específicos em cada atributo

Quando fazer Testes de Validação de Dados

  • Desenvolvimento

Devemos realizar os testes durante o desenvolvimento de um projeto ou alteração de um projeto já existente de modo a garantir que as alterações estão sendo realizadas conforme o esperado. Isso também permite encontrar problemas antes que as alterações estejam no ambiente de produção.

Os testes também são necessários para determinar a causa raiz das falhas existentes. Muitas vezes podemos ir por um caminho que não cobre todas as possibilidade de erro e, com os testes, podemos avistar esses problemas mais facilmente.

  • Produção

É possível agendar testes para serem realizados em tempos de espaço determinados ou em momentos específicos, como quando da ingestão de novos dados ou logo após a atualização de processos.

É importante continuar testando os processos para detectar novas falhas que podem ocorrer, seja por erro nos dados, inserção de dados novos ou alteração de alguma lógica. Os testes permitem a equipe detectar problemas de qualidade de dados bem antes que os consumidores finais sejam afetados – ou, pelo menos, alertá-los do problema.




Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *