fbpx

O ciclo de desenvolvimento de software está cheio de desafios, uma vez que as organizações são confrontadas não só com uma diminuição do time-to-market, mas também com um aumento da complexidade das aplicações. Para assegurar que as aplicações se mantêm estáveis e funcionais, desde o desenvolvimento inicial até ao lançamento do produto e mais além, as organizações precisam de empregar uma variedade de tipos de testes.

Claro que, à medida que o desenvolvimento aumenta em complexidade, o mesmo acontece com os testes necessários. Um componente vital de qualquer cenário de teste bem sucedido é a gestão de dados de teste (TDM). Permite às organizações de nível empresarial racionalizar, automatizar e controlar todos os tipos de testes utilizados, reduzindo ao mesmo tempo os custos e aumentando a qualidade dos testes.

O que é a Gestão de Dados de Teste (TDM) nos testes de software?

A gestão de dados de teste é o processo de criação, gestão, implementação, e entrega de dados de teste. Tradicionalmente, os testes de desenvolvimento de software realizavam-se em silos descentralizados, mas o TDM consolida os testes sob a alçada de uma única equipa, grupo, ou departamento.

Os serviços de gestão de dados de teste reúnem os dados necessários para testes automatizados de software, incluindo dados da unidade, integração, e testes de sistema. Implica a obtenção e armazenamento dos dados apropriados e precisos necessários para os testes automatizados, reduzindo ou eliminando a necessidade de envolvimento humano no processo de teste (um conceito semelhante ao
automatização de processos robóticos
).

À medida que a TDM cresceu em popularidade, expandiu-se para incluir a geração de dados sintéticos, mascaramento de dados, sub-configuração, inteligência artificial, e muito mais.

Em última análise, a gestão de dados de teste aumenta a fiabilidade e a qualidade do produto de software acabado, resultando numa experiência superior para o utilizador final. Além disso, o aspecto de ofuscação de dados da TDM ajuda as organizações a cumprirem todas as leis e regulamentos aplicáveis à privacidade de dados.

Quem utiliza a Gestão de Dados de Teste (TDM) em Testes de Software?

Embora a resposta de “todos” possa parecer simplista e ampla, a verdade é que técnicas de gestão de dados de teste beneficiar todos os tipos de aplicações de software. Se os testes ocorrerem durante o ciclo de desenvolvimento (e devem ocorrer), os processos TDM aumentam a precisão, organização e utilidade dos resultados.

Porque todo o desenvolvimento de software requer testes, a TDM irá beneficiar essencialmente qualquer projecto. Dito isto, certas organizações e aplicações praticamente obrigam à utilização de um estratégia de gestão de dados de teste.

As aplicações de nível empresarial requerem TDM devido às suas necessidades de testes complexos e multifacetados. O TDM beneficia todas as principais áreas de teste encontradas no desenvolvimento empresarial, incluindo testes funcionais, não funcionais, de desempenho e de automatização.

Além disso, os processos de ofuscação da TDM tornam a sua utilização essencial para aplicações que envolvem dados pessoais ou sensíveis, incluindo quaisquer sites ou aplicações ligadas ao comércio electrónico, finanças e cuidados de saúde.

Para que tipos de testes serve a gestão de dados?

A gestão de dados concentra-se em três grandes categorias de testes.

1. TDM para testes de desempenho

Os testes de desempenho medem o desempenho de uma aplicação sob a carga de trabalho esperada, avaliando a sua capacidade de resposta, estabilidade e escalabilidade. O TDM permite concentrar os testes nas infra-estruturas e nos elementos voltados para o utilizador para alcançar um desempenho rápido e fiável.

O melhores ferramentas de gestão de testes ajudam a aumentar os ciclos de actualização e a geração de dados em massa.

2. TDM para testes funcionais

Enquanto os testes de desempenho analisam a velocidade e estabilidade da aplicação, os testes funcionais determinam se o software actua de acordo com requisitos pré-determinados. Essencialmente: Será que o software faz o que deve? Os serviços de gestão de dados de teste ajudam a manter o controlo de qualidade sobre a aplicação principal, além de novas e actualizadas funcionalidades.

O TDM ajuda a aliviar ou prevenir a baixa cobertura, limites de acesso, prazos de fornecimento de dados longos, alta dependência, e questões relacionadas com a dimensão do ambiente de teste.

3. TDM em testes de automatização

Estratégia de dados de teste para automatização e
hiperautomação
processos permitem operações sem contacto, ao mesmo tempo que aumentam a precisão, reduzindo o potencial de erro humano. Os processos de gestão de dados de teste são utilizados em todos os tipos de ferramentas e testes de automatização da gestão de dados de teste, incluindo
automatização de processos robóticos
.

A estratégia de dados de teste para automatização ajuda a aliviar a lenta criação de dados front-end, a falta de acesso a dados dinâmicos, e a incapacidade de acesso ao ambiente de teste.

Benefícios da Gestão de Dados de Teste

vantagens da criação de um centro de ensaio de excelência (TCoE)

estratégias TDM, juntamente com ferramentas de automatização da gestão de dados de teste, proporcionam múltiplos benefícios para organizações de nível empresarial.

1. Melhora a qualidade dos dados

Todos os testes no mundo são infrutíferos se forem construídos sobre dados incompletos, irrelevantes, ou corrompidos. O TDM identifica, gere e armazena os dados necessários para os testes automatizados, para que possa assegurar-se de que são apropriados e completos. Além disso, ao acabar com a necessidade de transferência de dados entre vários testadores, a corrupção de dados é minimizada, se não eliminada.

2. Desenvolve dados realistas

Os resultados dos testes serão improdutivos se os dados dos testes não representarem com precisão os dados de produção. O TDM permite às organizações identificar e armazenar dados de teste que espelham os dados encontrados nos servidores de produção, assegurando que os resultados dos testes reflectem funções de software do mundo real. Referido como “dados realistas”, é semelhante aos dados de produção em formato, quantidade, e outros factores.

3. Melhora o acesso aos dados

Os testes automatizados de software só funcionam eficientemente quando os dados estão disponíveis em tempos pré-determinados. Por exemplo, as ferramentas de teste do armazém de dados podem precisar de aceder aos dados em determinados momentos para fins de autenticação. Como a TDM se concentra no armazenamento de dados, os dados apropriados estão sempre prontos quando requerido pelo software de teste automatizado e cronograma de produção.

4. Assegura a Conformidade dos Dados

A TDM ajuda as organizações a manter o cumprimento de todos os regulamentos governamentais e outros regulamentos relevantes, tais como
HIPPA
,
CCPA
e da UE
GDPR
. A gestão de dados de teste GDPR e outros regulamentos deste tipo requerem dados de produção que podem incluir nomes de utilizadores, dados de localização, informações pessoais, e mais – dados que necessitam de mascaramento antes de os testes poderem ocorrer.

O melhores ferramentas de gestão de dados de teste permitir às organizações a anonimização automática de dados para uso interno e externo para assegurar a conformidade.

Desafios e armadilhas da gestão de dados de teste

desafia testes de carga

Embora a gestão de dados de teste proporcione benefícios vitais para o desenvolvimento de software a nível empresarial, eles também têm potenciais armadilhas. A compreensão dos desafios da TDM permite às organizações antecipar e minimizar os seus efeitos.

1. A clonagem de produção é lenta e dispendiosa

Para obter dados de teste, a maioria das organizações retirará dados dos servidores de produção e depois torná-los-á anónimos. No entanto, a recolha de dados de produção pode ser demorada, especialmente numa fase tardia do processo de desenvolvimento quando se lida com grandes quantidades de código.

Após a clonagem dos dados, é necessário um local para os armazenar. As infra-estruturas e os custos de armazenamento podem somar-se rapidamente. É possível mitigar estes custos com o corte de dados. Em vez de clonar todos os dados de produção, a equipa irá esculpir uma “fatia” de dados mais pequena e representativa.

2. Processos de Ofuscação Acrescentar Custo e Complexidade

Como descrito anteriormente, os dados dos utilizadores são fortemente regulamentados, mesmo para testes internos, e requerem anonimização. Infelizmente, o processo de ofuscação de dados acrescenta complexidade e custos ao processo de desenvolvimento.

Embora a velocidade, precisão e relação custo-eficácia da ofuscação sejam todas melhoradas com ferramentas de teste automatizadas, continuará a existir uma curva de aprendizagem para as equipas relevantes.

Sinais / Razões que indicam que a sua organização necessita de gestão de dados de teste

Embora todo o desenvolvimento de software beneficie da gestão de dados de teste, as organizações nem sempre dão prioridade à implementação. Os seguintes sinais indicam que uma organização verá benefícios quase imediatos da implementação da TDM:

  • O tamanho dos dados aumenta “transversalmente”, incluindo aumentos no tamanho dos conjuntos de dados, conjuntos totais de dados, instâncias de bases de dados, e sistemas a montante.
  • Uma quantidade significativa de tempo de produção é gasta na preparação de dados para testes.
  • Os dados de produção ultrapassam de longe a quantidade de dados de teste disponíveis.
  • As funcionalidades de aplicação estão a entrar em funcionamento com erros.
  • As equipas de teste são descentralizadas ou devem confiar em dados de uma fonte central.
  • As equipas de teste estão sobrecarregadas e incapazes de acompanhar as necessidades de teste.
  • Os dados a montante geram a grande maioria dos dados de teste.
  • Os conjuntos de dados de teste não são reutilizáveis nem fáceis de duplicar.

A gestão de dados de teste ajuda a reduzir, corrigir e prevenir estas questões, entre outras.

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

Tipos de dados em testes de software

As aplicações de software geram volumes incríveis de dados durante o desenvolvimento e após o lançamento. O processo de gestão de dados de teste concentra-se tipicamente nos seguintes tipos de dados:

1. Dados de produção

Os dados de produção são gerados por pessoas reais utilizando a sua aplicação. Dependendo do tamanho da sua base de utilizadores e da complexidade da sua aplicação, o volume de produção pode tornar-se muito grande, muito rapidamente – e é por isso que está tipicamente dividido em subconjuntos baseados em necessidades de teste.

Note-se que os dados de produção contêm frequentemente informação sensível relativa a
questões de conformidade
como os dados médicos e financeiros, que requerem uma ofuscação.

2. Dados Sintéticos

Os dados sintéticos são criados manualmente ou com ferramentas de teste automatizadas. Simula o comportamento real do utilizador o mais de perto possível.

Embora contorne a necessidade de embaçamento de dados, os dados sintéticos têm uma utilidade limitada. É utilizado principalmente para testar novas características de carga.

A criação exacta de dados sintéticos requer um elevado nível de especialização, embora uma ferramenta de gestão automatizada de dados de teste o torne mais fácil.

3. Dados válidos

Dados válidos é o termo utilizado para descrever os dados produzidos quando não ocorrem erros ou incidentes inesperados. O formato, valores e quantidade dos dados alinham com as expectativas de pré-testes. Dados válidos testam o que se chama o “caminho feliz”, que é quando a viagem do utilizador segue o curso previsto.

4. Dados inválidos

Os dados inválidos derivam do “caminho infeliz”. São os dados de cenários e falhas inesperados. Os dados inválidos são também utilizados como parte dos testes de caos, que testam os limites de uma aplicação sob um dilúvio de dados maus.

O que torna os “dados de boa qualidade” para fins de teste de software?

Lista de verificação de testes de software

Os testes com dados incompletos ou irrelevantes são muitas vezes piores do que renunciar totalmente aos testes, uma vez que as conclusões tiradas, e as acções subsequentes tomadas, serão incorrectas. Mas como é que as organizações identificam dados “bons” para fins de teste de software? Procure estas três características de qualidade de dados:

1. Precisão

Os bons dados espelham de perto os procedimentos da vida real. Se utilizar dados de produção mascarados, estes devem pertencer directamente à área que está a testar – não pode ser uma amostra aleatória do comportamento do utilizador. Os dados sintéticos devem assemelhar-se com precisão ao comportamento real do utilizador, incluindo a sua natureza imprevisível.

2. Validade

Os bons dados correspondem ao objectivo do seu cenário de testes. Por exemplo, a maioria dos compradores em linha não compra 200 quantidades de um único item, pelo que o teste extensivo do comportamento do sistema nesse cenário é uma má utilização de recursos. No entanto, pretende testar para situações em que as pessoas compram dez artigos.

3. Excepções

Os dados devem cobrir questões que provavelmente irão acontecer, mas pouco frequentemente. Um cenário em que um cliente paga por um artigo com um código de cupão é um exemplo comum de “dados de excepção” na arena do comércio electrónico.

Que perguntas deve fazer antes e durante o planeamento da gestão de testes de dados?

O sucesso dos testes é em grande parte determinado na fase de planeamento. Durante as fases iniciais, as equipas devem fazer as seguintes perguntas.

1. De que dados necessitamos?

Determinar que dados necessitam de ser recolhidos é um processo em duas partes. Em primeiro lugar, deve estar relacionado com o cenário de testes. Deve também ter relevância comercial para ajudar a que os testes se mantenham eficazes e rentáveis.

2. Quantos dados precisamos?

Demasiados dados, como a cópia de todos os dados de produção, são dispendiosos, morosos e complicam excessivamente o processo. Por outro lado, se o tamanho da amostra for demasiado pequeno, os resultados serão imprecisos.

3. Quando é que precisamos dos dados?

Os testes estão programados, ou os dados devem estar disponíveis a pedido? As equipas devem coordenar todos os horários dos testes e renovar os ciclos antes do início dos testes.

4. Que tipo de teste é necessário?

Automatização de testes de software requer conjuntos de dados estáveis e previsíveis. Se os dados necessários para o seu teste variarem consideravelmente, os testes manuais podem produzir melhores resultados.

Passos na gestão dos testes de dados

passos na criação de um sistema robusto de gestão de dados de teste (TDM)

Embora as especificidades variem, os programadores de software a nível empresarial seguirão geralmente estes passos ao implementar uma estratégia TDM.

1. Criação de Dados – Técnicas de Geração de Dados para Testes, etc.

Para gerar dados eficazes, terá de considerar a sua exactidão e relevância. Reproduz cenários realistas? Além disso, é necessário gerar dados de excepção, que abrangem cenários fora da actividade típica do utilizador.

2. Obuscação de dados

Terá de mascarar todos os dados de produção para se manter dentro da conformidade regulamentar. Os tipos mais comuns de ofuscação incluem a anagramação, encriptação, substituição, e nulling. Embora a ofuscação manual seja possível numa capacidade limitada, o mascaramento a nível empresarial requer ferramentas automáticas.

3. Corte de dados

A cópia de todos os dados de produção é frequentemente um desperdício de recursos e de tempo. Com o corte de dados, é recolhido um conjunto gerível de dados relevantes, aumentando a velocidade e a eficiência de custos dos testes.

4. Provisionamento

O aprovisionamento ocorre depois de os dados serem obtidos e mascarados. Durante o aprovisionamento, os dados são transferidos para o ambiente de teste. As ferramentas automatizadas proporcionam a capacidade de entrar em conjuntos de teste em ambientes de teste utilizando a integração CI/CD, com a opção de ajuste manual.

5. Integrações

Os dados de teste de múltiplas fontes dentro do ecossistema TI devem ser integrados na conduta CI/CD (a conduta CI/CD é o processo estabelecido para alterações de código). A realização da integração requer a identificação precoce de todos os canais de dados.

6. Versioning

A criação de versões de dados de teste ajuda as equipas a repetir testes para medir os resultados. Além disso, as versões permitem a monitorização de alterações precisas aos parâmetros de teste.

Características e Propriedades da Gestão de Dados de Teste

A TDM adapta-se às necessidades em constante mudança de qualquer projecto de desenvolvimento de software. No entanto, independentemente de quaisquer ajustamentos necessários para uma organização, o processo TDM também apresentará as seguintes características:

1. Melhoria da Qualidade e Fidelidade dos Dados

O TDM aumenta a precisão e o realismo dos seus dados de teste de modo a fornecer uma amostra verdadeiramente representativa do comportamento do utilizador. Todos os processos acabam por conduzir a um objectivo: uma experiência de utilizador fiável e estável.

2. Conformidade regulamentar

Software de gestão de dados de teste assegura que todos os dados de produção são suficientemente mascarados antes dos testes, mantendo a sua organização com todos os regulamentos de privacidade. Ao permanecer em conformidade, evitará repercussões legais, incluindo multas, e questões de relações públicas negativas.

3. Melhoria da qualidade do produto

A garantia de qualidade é um processo moroso e dispendioso – mas também necessário para o lançamento de aplicações funcionais e de fácil utilização. Os processos TDM permitem uma identificação mais rápida de erros, maior segurança, e testes mais versáteis em comparação com o método tradicional de siloed.

Como implementar a gestão de dados de teste

RPA e Centro de Testes de Automação (TCoE)

O produto de software da sua organização ditará uma variedade de testes específicos, mas a implementação básica de conceitos de gestão de dados de teste envolve os cinco passos seguintes:

Etapa 1: Planeamento

Comece por formar uma equipa de teste de dados, que determinará então os requisitos e documentação de gestão de dados de teste, desenvolvendo ao mesmo tempo um plano de teste abrangente.

Etapa 2: Análise

Durante a fase de análise, os requisitos de dados entre equipas são consolidados. São também implementados backups, armazenamento e questões logísticas semelhantes.

Passo 3: Desenho

A fase de concepção é o ponto final do planeamento antes do início dos testes. As equipas devem identificar todas as fontes de dados e ao mesmo tempo finalizar os planos de comunicação, documentação, e actividades de teste.

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

Passo 4: Construir

A fase de construção é onde a “borracha encontra a estrada”. Os planos são executados. Em primeiro lugar, ocorre o mascaramento de dados. A seguir, é feito o backup dos dados. Finalmente, os testes são efectuados.

Passo 5: Manutenção

Depois de implementação da gestão de dados de testeA empresa terá de manter os processos para o ciclo de vida do projecto. A manutenção do TDM inclui a resolução de problemas, actualização dos dados de teste existentes, e adição de novos tipos de dados.

Estratégias de Gestão de Dados de Teste

como funcionam os testes de automação em indústrias como a banca, por exemplo

Porque o TDM toca em tantos elementos diferentes do processo de desenvolvimento, pode complicar-se rapidamente. As seguintes estratégias permitem-lhe manter-se concentrado e refinar continuamente a sua organização abordagem de gestão de dados de teste.

Estratégia 1: Melhorar a entrega de dados

Procurar reduzir consistentemente o tempo de entrega de dados de teste, utilizando
serviços de teste de software
tais como
ZAPTEST
. Ferramentas com capacidades DevOps simplificam os testes com uma abordagem de baixo toque.

Com ZAPTEST os utilizadores podem seleccionar Dados de teste Sequenciais; Aleatórios ou Únicos, utilizando números de filas automáticos ou específicos. Podem especificar o intervalo de dados e políticas “fora de valores” que permitem criar cenários de teste realistas, baseados em dados, para Functional (UI e API), Performance testing e RPA.

Além disso, o software de teste automatizado pode substituir os sistemas de bilhética informática por um sistema de auto-serviço para os utilizadores.

Estratégia 2: Reduzir os custos de infra-estruturas

O volume de dados de teste cresce durante o desenvolvimento, resultando numa maior utilização de recursos de infra-estruturas. As ferramentas TDM podem ajudar a minimizar os custos de infra-estrutura associados através da consolidação de dados, arquivo, e um processo chamado bookmarking, que faz melhor uso do espaço do ambiente de teste.

Estratégia 3: Melhorar a qualidade dos dados

Soluções de gestão de dados de teste aumentar continuamente as características de qualidade dos dados, concentrando-se em três elementos-chave: a idade, exactidão e tamanho dos dados.

Como melhorar a gestão de dados de teste

O TDM não é um processo estático. Após a configuração inicial, deverá esforçar-se por melhorias contínuas, seguindo estas melhores práticas de gestão de dados de teste.

1. Dados isolados

Ao executar testes num ambiente controlado, é possível isolar os dados para melhor comparar a produção esperada com a real. Os dados de isolamento também permitem a realização de testes paralelos.

2. Minimizar o armazenamento da base de dados

O armazenamento de dados de teste em bases de dados reduz a velocidade de teste automático, ao mesmo tempo que aumenta a dificuldade de isolar dados. Ferramentas automatizadas, mais técnicas como o corte de dados, ajudam a reduzir a quantidade de armazenamento necessário na base de dados.

3. Foco nos testes de unidade

Seguir as directrizes estabelecidas pela
pirâmide de automatização de testes
que recomenda a realização de testes unitários de aproximadamente 50% dos seus testes. Os testes unitários funcionam independentemente dos dados externos, custam muito menos do que outros tipos de testes, e são relativamente rápidos de implementar.

Como medir a gestão de dados de teste

o que é a automatização de testes de software

As seguintes métricas fornecem informações cruciais sobre a eficácia das suas estratégias TDM.

1. Estão disponíveis dados de teste suficientes?

É possível medir a disponibilidade de dados de teste rastreando o tempo gasto na gestão de dados para utilização em testes. Se os dados disponíveis forem insuficientes, o tempo de desenvolvimento abranda, e os programadores sentir-se-ão constrangidos.

2. Os dados dos testes estão disponíveis para testes automatizados?

Os processos de testes automatizados requerem dados a pedido. Monitorizar a percentagem de conjuntos de dados disponíveis, mais a frequência com que são acedidos e a frequência com que são actualizados.

3. Os Testes Automatizados são limitados pelos Dados de Testes?

Quantos testes automatizados pode executar com os seus dados de teste actuais? Se precisar de realizar mais testes do que os seus dados permitem, terá de recolher dados de teste com maior frequência.

A forma mais fácil e mais precisa de obter estas medições é com software de gestão de dados de teste.

 

Questões de privacidade e como preveni-la

Embora a gestão de dados de teste tenha tido origem como método de recolha e análise de dados, com o tempo tornou-se igualmente importante na prevenção de várias questões de privacidade.

1. Regulamento de dados

A TDM assegura que a sua empresa permanece em conformidade com CCPA, HIPAA, GDPR, e todos os outros regulamentos relevantes sobre privacidade de dados. A não ocultação adequada de dados durante os testes pode resultar em sanções financeiras significativas e mesmo potencialmente penais.

2. Contra-ataque do consumidor

As violações de dados podem resultar em danos substanciais para a imagem de uma empresa, uma vez que os utilizadores ficarão relutantes em utilizar uma aplicação propensa a fugas. A implementação da gestão de dados de teste ajuda a ganhar a confiança dos utilizadores, evitando fugas e assegurando aos potenciais utilizadores que os seus dados serão mantidos em segurança.

Conclusão

A necessidade de testes no desenvolvimento de software só se tornará mais necessária e mais complexa. Para racionalizar os processos de desenvolvimento, mantendo o controlo de qualidade, as organizações empresariais necessitarão de utilizar software de gestão de dados de teste, especificamente ferramentas de gestão de testes, tais como as criadas por
ZAPTEST
.

O melhores ferramentas de gestão de dados de teste fornecer criação e gestão de dados de teste abrangente e responsiva, permitindo um software superior com maior funcionalidade entregue mais rapidamente do que nunca.

FAQs

Aqui estão respostas rápidas a perguntas comuns sobre gestão de dados de teste em testes de software.

O que é a Gestão de Dados de Teste?

A gestão de dados de teste é a criação, gestão e análise dos dados necessários para as ferramentas de teste de armazéns de dados automatizados. Os processos centram-se na identificação de dados de alta qualidade relativos a parâmetros de teste específicos, mascarando-os, e entregando-os às equipas apropriadas.

O melhor ferramentas de gestão de dados de teste automatizar muitos dos processos, tais como a recolha de dados, ofuscação e armazenamento.

O que são dados de teste em testes de software?

Uma grande parte dos dados utilizados nos testes de software são dados de produção, que são gerados por utilizadores reais. Devido aos regulamentos de privacidade, os dados de produção requerem mascaramento antes de serem utilizados em testes.

Os dados dos testes de software também podem ser sintéticos, o que significa que são fabricados artificialmente para reproduzir o comportamento dos utilizadores reais da forma mais precisa possível. É frequentemente utilizado para testar novas características ou actualizações antes de entrarem em funcionamento.

Download post as PDF

Alex Zap Chernyak

Alex Zap Chernyak

Founder and CEO of ZAPTEST, with 20 years of experience in Software Automation for Testing + RPA processes, and application development. Read Alex Zap Chernyak's full executive profile on Forbes.

Get PDF-file of this post

Virtual Expert

ZAPTEST

ZAPTEST Logo