etl vs db testing closer look etl testing need
O Teste de Software possui uma variedade de áreas a serem concentradas. As principais variedades são testes funcionais e não funcionais. O Teste Funcional é a forma procedimental de garantir que a funcionalidade desenvolvida funcione conforme o esperado. O teste não funcional é a abordagem pela qual os aspectos não funcionais, como aprimorado ou desempenho em um nível aceitável, podem ser garantidos.
Existe outro tipo de teste chamado Teste de banco de dados . Os dados são organizados no banco de dados na forma de tabelas. Para os negócios, pode haver fluxos onde os dados de várias tabelas podem ser mesclados ou processados em uma única tabela e vice-versa.
Teste ETL é um outro tipo de teste preferido no caso de negócios, em que os clientes buscam um tipo de necessidade de relatório. O relato é buscado com o objetivo de analisar as demandas, necessidades e o fornecimento para que os clientes, empresas e usuários finais sejam muito bem atendidos e beneficiados.
O que você aprenderá neste tutorial?
Neste tutorial, você aprenderá o que é Teste de Banco de Dados, o que é Teste de ETL, a diferença entre Teste de BD e Teste de ETL e mais detalhes sobre a necessidade, processo e planejamento de teste de ETL com exemplos reais.
Também cobrimos o Teste de ETL com mais detalhes na página abaixo. Além disso, dê uma olhada nisso.
=> Teste ETL / Dicas e técnicas de teste de data warehouse
O que você aprenderá:
- Teste DB vs. Teste ETL
- Estudo comparativo de testes de ETL e DB
- Por que o negócio deve optar pelo ETL?
- Planejamento de Teste ETL
- Necessidades críticas de ETL
- Problemas básicos em testes de ETL
- Pontos a serem lembrados durante o planejamento e execução do teste ETL
- Ferramentas ETL e seu uso significativo
- Conclusão
- Leitura recomendada
Teste DB vs. Teste ETL
A maioria de nós fica um pouco confusa ao considerar que os testes de banco de dados e de ETL são semelhantes e iguais. O fato é que eles são semelhantes, mas não iguais.
Teste de banco de dados:
O teste de banco de dados geralmente é usado extensivamente nos fluxos de negócios, onde há vários fluxos de dados ocorrendo no aplicativo de várias fontes de dados em uma única tabela. A fonte de dados pode ser uma tabela, arquivo simples, aplicativo ou qualquer outra coisa que possa gerar alguns dados de saída.
Por sua vez, os dados de saída obtidos ainda podem ser usados como entrada para o fluxo de negócios sequencial. Portanto, quando realizamos o teste de banco de dados, a coisa mais importante que deve ser capturada é a maneira como os dados podem ser transformados a partir da origem, junto com a forma como são salvos no local de destino.
A sincronização é uma coisa importante e essencial que deve ser considerada ao realizar o teste de banco de dados. Devido ao posicionamento do aplicativo no fluxo arquitetônico, pode haver alguns problemas com os dados ou sincronização do banco de dados. Portanto, ao realizar o teste, isso deve ser cuidado, pois isso pode superar o potencial defeitos inválidos ou bugs.
Exemplo 1:
O projeto “A” tem uma arquitetura integrada onde o aplicativo específico faz uso de dados de várias outras fontes de dados heterogêneas. Portanto, a integridade desses dados com o local de destino deve ser feita junto com as validações para o seguinte:
- Validação de chave estrangeira primária
- Integridade dos valores da coluna
- Valores nulos para quaisquer colunas
O que é teste ETL?
Teste ETL é um tipo especial de teste que o cliente deseja que seja feito para sua previsão e análise de seus negócios. Isso é usado principalmente para fins de relatório. Por exemplo, se os clientes precisam ter relatado sobre os clientes que usam ou procuram seu produto com base no dia da compra, eles devem fazer uso dos relatórios ETL.
Publicar análise e comunicando , esses dados são dados armazenados para um data warehouse onde os dados históricos antigos de negócios devem ser movidos.
qual é o melhor site de download de mp3 de graça
Este é um teste de vários níveis, pois os dados da fonte são transformados em vários ambientes antes de chegar ao local de destino final.
Exemplo # 2:
Consideraremos um grupo “A” fazendo negócios com clientes de varejo por meio de um mercado de compras onde o cliente pode comprar quaisquer itens domésticos necessários para sua sobrevivência no dia a dia. Aqui todos os clientes que visitam recebem um ID de membro único, com o qual podem ganhar pontos sempre que vierem fazer compras no mercado de compras.
O regulamento fornecido pelo grupo diz que os pontos ganhos expiram a cada ano. E dependendo de seu uso, a afiliação pode ser aumentada para um membro de grau superior ou rebaixada para um membro de grau inferior comparativamente ao grau atual.
Após 5 anos de estabelecimento do mercado de compras, agora a administração está procurando expandir seus negócios junto com a receita.
Conseqüentemente, eles exigiam poucos relatórios de negócios para que pudessem promover seus clientes.
No teste de banco de dados, realizamos o seguinte:
# 1) Validações nas tabelas de destino que são criadas com colunas com cálculos lógicos, conforme descrito na folha de mapeamento lógico e no documento de roteamento de dados.
como ver um arquivo xml
#dois) Manipulações como inserção, atualização e exclusão dos dados do cliente podem ser executadas em qualquer aplicativo de PDV do usuário final em um sistema integrado junto com o banco de dados back-end para que as mesmas alterações sejam refletidas no sistema final.
# 3) O teste de banco de dados deve garantir que não haja dados do cliente que tenham sido mal interpretados ou mesmo truncados. Isso pode levar a problemas sérios, como mapeamento incorreto de dados do cliente com sua fidelidade
No Teste ETL, verificamos o seguinte:
# 1) Supondo que haja 100 clientes na origem, você verificará se todos esses clientes, juntamente com seus dados das 100 linhas, foram movidos do sistema de origem para o destino. Isso é conhecido como verificação de Verificação da integridade dos dados.
#dois) Verificar se os dados do cliente foram devidamente manipulados e demonstrados nas 100 linhas. Isso é simplesmente chamado de verificação de Verificação de precisão de dados .
# 3) Relatórios para os clientes que ganharam pontos mais do que x valores em um determinado período.
Estudo comparativo de testes de ETL e DB
Os testes de ETL e DB têm poucos aspectos diferentes entre si que são mais essenciais para serem compreendidos antes de realizá-los. Isso nos ajuda a compreender os valores e a importância dos testes e a maneira como eles ajudam os negócios.
A seguir está um formulário tabular que descreve o comportamento básico de ambos os formatos de teste.
Teste de banco de dados | Teste ETL | |
---|---|---|
Natureza dos Dados | Dados normalizados estão sendo usados aqui | Dados desnormalizados estão sendo usados aqui |
Objetivo principal | Integração de dados | Relatório de BI |
Local aplicável | No sistema funcional onde ocorre o fluxo de negócios | Externo ao ambiente de fluxo de negócios. entrada são os dados históricos de negócios |
Ferramenta de automação | QTP, selênio | Informatica, QuerySurge, COGNOS |
Impacto nos negócios | Impactos graves podem levar, pois é a arquitetura integrada dos fluxos de negócios | Impactos potenciais, como quando os clientes desejam que a previsão e a análise sejam feitas |
Modelagem usada | Relacionamento de entidade | Dimensional |
Sistema | Processamento de transação online | Processamento analítico online |
Por que o negócio deve optar pelo ETL?
Muitas necessidades de negócios estão disponíveis para eles considerarem os testes de ETL. Cada empresa deve ter sua missão e linha de negócios exclusivas. Todo negócio tem seu ciclo de vida de produto que assume a forma genérica:
É muito claro que qualquer novo produto entra no mercado com um tremendo crescimento nas vendas e até uma fase chamada de maturidade e depois diminui nas vendas. Esta mudança gradual testemunha uma queda definitiva no crescimento dos negócios. Portanto, é mais importante analisar as necessidades do cliente para o crescimento do negócio e outros fatores necessários para tornar a organização mais lucrativa.
Então, na realidade, os clientes querem analisar os dados históricos e criar alguns relatórios estrategicamente.
Planejamento de Teste ETL
Uma das principais etapas do teste de ETL é planejar o teste que será executado. Será semelhante ao Plano de Teste para o Teste do Sistema isso geralmente é executado, exceto alguns atributos, como requisitos e casos de teste.
Aqui, os requisitos nada mais são do que um folha de mapeamento que terá um tipo de mapeamento entre os dados em diferentes bancos de dados. Como sabemos que o teste de ETL ocorre em vários níveis, existem vários mapeamentos necessários para validar isso.
Na maioria das vezes, os dados são capturados dos bancos de dados de origem não diretamente. Todos os dados de origem terão a visualização das tabelas de onde os dados podem ser usados.
Exemplo: A seguir está um exemplo de como os mapeamentos podem ser fornecidos. As duas colunas VIEW_NAME e TABLE_NAME podem ser usadas para representar as visualizações para leitura de dados da fonte e da tabela no ambiente ETL, respectivamente.
É aconselhável manter a convenção de nomenclatura que pode nos ajudar no planejamento da automação. A notação genérica que pode ser usada é apenas prefixar o nome do ambiente.
O mais importante no ETL é identificar os dados essenciais e as tabelas da origem. A próxima etapa essencial é o mapeamento de tabelas da origem para o ambiente ETL.
A seguir está um exemplo de como o mapeamento entre as tabelas dos vários ambientes pode ser relacionado ao propósito do ETL.
O mapeamento acima assume os dados da tabela de origem para a tabela de preparação. E a partir daí para as tabelas em EDW e depois para OLAP que é o ambiente de relatório final. Portanto, a qualquer momento, a sincronização de dados é muito importante para o bem do ETL.
Necessidades críticas de ETL
Como entendemos, ETL é a necessidade de prever, reportar e analisar o negócio para capturar as necessidades do cliente de forma mais sucessiva. Isso permitirá que a empresa tenha demandas maiores do que no passado.
Aqui estão algumas das necessidades críticas sem as quais o teste de ETL não pode ser alcançado:
- Identificação de dados e tabelas : Isso é importante porque pode haver muitos outros dados irrelevantes e desnecessários que podem ser de menor importância ao prever e analisar as necessidades do cliente. Portanto, os dados relevantes e as tabelas devem ser selecionados antes de iniciar os trabalhos ETL.
- Folha de mapeamento : Esta é uma das necessidades críticas ao fazer trabalhos de ETL. O mapeamento da tabela certa da origem ao destino é obrigatório e quaisquer problemas ou dados incorretos nesta planilha podem impactar todo o resultado ETL.
- Desenhos e dados de tabelas, tipo de coluna : Esta é a próxima etapa principal ao considerar o mapeamento das tabelas de origem nas tabelas de destino. O tipo de coluna deve corresponder às tabelas de ambos os locais, etc.
- Acesso ao banco de dados : O principal é o acesso ao banco de dados onde o ETL é executado. Quaisquer restrições ao acesso terão um impacto equivalente.
Relatórios e testes ETL
qual é o melhor sistema operacional windows
Relatórios em ETL são mais importantes porque explicam e direcionam os clientes às necessidades dos clientes. Com isso, eles podem prever e analisar as necessidades exatas do cliente
Exemplo # 3:
Uma empresa que fabrica tecidos de seda queria analisar suas vendas anuais. Na revisão de suas vendas anuais, eles descobriram que durante os meses de agosto e setembro houve uma queda tremenda nas vendas com o uso do relatório que geraram.
Por isso, eles decidiram lançar a oferta promocional como a troca, descontos, etc., que aumentaram suas vendas.
Problemas básicos em testes de ETL
Pode haver uma série de problemas ao realizar o teste ETL, como o seguinte:
- O acesso às tabelas de origem ou as visualizações não serão válidos.
- O nome da coluna e o tipo de dados da fonte para a próxima camada podem não corresponder.
- Vários registros da tabela de origem para a tabela de destino podem não corresponder.
E pode haver muito mais.
A seguir está um exemplo de folha de mapeamento em que há colunas como VIEW_NAME, COLUMN_NAME, DATA_TYPE, TABLE_NAME, COLUMN_NAME, DATA_TYPE e TRANSFORMATION LOGIC presentes.
As primeiras 3 colunas representam os detalhes do banco de dados de origem e as 3 seguintes são os detalhes do banco de dados imediatamente anterior. A última coluna é muito importante. A lógica de transformação é a forma como os dados da fonte são lidos e armazenados no banco de dados de destino. Isso depende das necessidades de negócios e de ETL.
Pontos a serem lembrados durante o planejamento e execução do teste ETL
O mais importante no teste de ETL é o carregamento de dados com base nos critérios de extração do banco de dados de origem. Quando este critério for inválido ou obsoleto, não haverá dados na tabela para realizar o teste ETL que realmente traga mais problemas.
A seguir estão alguns dos pontos a serem cuidados durante o planejamento e execução do teste ETL:
# 1) Os dados estão sendo extraídos das fontes de dados heterogêneas
#dois) Manipulação do processo ETL no ambiente integrado que tem diferentes:
- DBMS
- OS
- Hardware
- Protocolos de comunicação
# 3) Necessidade de ter uma folha de mapeamento de dados lógicos antes que os dados físicos possam ser transformados
# 4) Compreender e examinar as fontes de dados
# 5) Carga inicial e carga incremental
# 6) Colunas de auditoria
# 7) Carregando os fatos e as dimensões
Ferramentas ETL e seu uso significativo
As ferramentas ETL são basicamente usadas para construir e converter o lógica de transformação levando dados da fonte para outra, aplicando a lógica de transformação. Você também pode mapear os esquemas da origem ao destino, o que ocorre de maneiras exclusivas, transformar e limpar os dados antes que eles possam ser movidos para o destino, juntamente com o carregamento no destino de maneira eficiente.
Isso pode reduzir significativamente os esforços manuais, pois o mapeamento pode ser feito, o qual é usado para quase toda a validação e verificação ETL.
- Informática - PowerCenter - é uma das ferramentas populares de ETL introduzidas pela Informatica Corporation. Isso tem uma base de clientes muito boa, cobrindo amplas áreas. Os principais componentes da ferramenta são suas ferramentas para clientes e as ferramentas de repositório e servidores. Para saber mais sobre a ferramenta clique Aqui
- IBM - Infosphere Information Server - A IBM, que é líder de mercado em tecnologia de Computação, desenvolveu o servidor Infosphere Information que é utilizado para Integração e Gestão da Informação no ano de 2008. Para saber mais sobre a ferramenta clique em Aqui
- Oracle - Integrador de Dados - A Oracle Corporation desenvolveu sua ferramenta ETL em nome de Oracle - Data Integrator. Seu crescente suporte ao cliente os fez atualizar suas ferramentas ETL em várias versões. Para saber mais sobre a ferramenta clique Aqui
Mais exemplos de uso de teste ETL:
Considerando algumas companhias aéreas que desejam lançar promoções e ofertas para atrair os clientes de forma estratégica. Em primeiro lugar, eles tentarão entender as demandas e necessidades das especificações do cliente. Para conseguir isso, eles exigirão os dados históricos, de preferência os dados dos 2 anos anteriores. Usando os dados, eles analisarão e prepararão alguns relatórios que serão úteis para entender as necessidades dos clientes.
Os relatórios podem ser do seguinte tipo:
- Clientes da região A que viajam para a região B em certas datas
- Clientes com critério de idade específico viajam para a cidade XX
E pode haver muitos outros relatórios.
A análise destes relatórios ajudará os clientes a identificar o tipo de promoções e ofertas que irão beneficiar os clientes e ao mesmo tempo podem beneficiar negócios onde isso pode se tornar uma situação ganha-ganha. Isso pode ser facilmente alcançado por meio de testes e relatórios de ETL.
Paralelamente, o segmento de TI enfrenta um sério problema de BD que foi percebido que interrompeu vários serviços, por sua vez, tem potencial para causar impactos no negócio. Na investigação, foi identificado que alguns dados inválidos corromperam alguns bancos de dados que precisavam ser corrigidos manualmente.
No primeiro caso, são os relatórios e testes ETL que serão necessários.
Considerando que o último caso é onde o teste de banco de dados tem que ser feito corretamente para superar problemas com dados inválidos.
Conclusão
Espero que o tutorial acima tenha fornecido uma visão geral simples e clara do que é o teste de ETL e por que ele deve ser feito junto com os impactos ou benefícios nos negócios que eles geram. Isso não para por aqui, mas pode se estender para definir previsões de crescimento nos negócios.
Sobre o autor: Este tutorial foi escrito por Nagarajan. Ele é um líder de teste com mais de 6 anos de experiência em testes de software em várias áreas funcionais como bancos, companhias aéreas e telecomunicações em termos de manual e automação.
Por favor, deixe-nos saber suas idéias / perguntas nos comentários abaixo.
Leitura recomendada
- Perguntas e respostas da entrevista de teste de ETL
- ETL Testing Tutorial de teste de data warehouse (um guia completo)
- As 10 principais ferramentas de teste de ETL em 2021
- Como realizar testes de ETL usando a ferramenta Informatica PowerCenter
- 31 principais perguntas e respostas da entrevista de teste de banco de dados
- Mais de 40 melhores ferramentas de teste de banco de dados - Soluções populares de teste de dados
- Guia completo de teste de banco de dados (por que, o quê e como testar dados)
- Teste de banco de dados Selenium (usando WebDriver e API JDBC)