O teste funcional é um tipo de teste que busca estabelecer se cada recurso do aplicativo funciona de acordo com os requisitos do software. Cada fun??o é comparada com o requisito correspondente para verificar se sua saída é consistente com as expectativas do usuário final. O teste é feito fornecendo entradas de amostra, capturando as saídas resultantes e verificando se as saídas reais s?o as mesmas que as esperadas.
Alguns exemplos de testes funcionais s?o:
Diferentemente dos testes n?o funcionais, os testes funcionais n?o se preocupam em investigar a qualidade, a seguran?a ou o desempenho do código-fonte subjacente do aplicativo. Ele n?o mede a velocidade, a escalabilidade e a confiabilidade.
Em vez disso, o teste funcional concentra-se nos resultados do processamento e n?o na mec?nica do processamento, e determina se o aplicativo atende às expectativas mínimas básicas do usuário.
Nesse sentido, a defini??o de teste funcional é quase sin?nimo de teste de caixa preta, enquanto o teste de caixa branca, por outro lado, é mais comumente uma característica dos testes n?o funcionais.?
Um plano de teste funcional geralmente segue a sequência abaixo:
Identificar os objetivos do teste
Os objetivos do teste funcional s?o os recursos que se espera que o software tenha com base nos requisitos do projeto. As metas de teste incluem a valida??o de que o aplicativo funciona conforme o planejado e de que ele lida com erros e cenários inesperados de forma elegante.
Criar cenários de teste
Desenvolva uma lista de todos os cenários de teste possíveis (ou, pelo menos, todos os mais importantes) para um determinado recurso. Os cenários de teste descrevem as diferentes maneiras como o recurso será usado. Por exemplo, para um módulo de pagamento, os cenários de teste podem incluir várias moedas, tratamento de números de cart?o inválidos ou expirados e gera??o de uma notifica??o sobre a conclus?o bem-sucedida da transa??o.
Criar dados de teste
Crie dados de teste que simulem as condi??es normais de uso com base nos cenários de teste que você identificou. Você pode inserir os dados de teste manualmente (por exemplo, de uma planilha do MS-Excel ou de uma impress?o) ou automaticamente por meio de um script ou ferramenta de teste que leia e insira os dados de um banco de dados, arquivo simples, XML ou planilha. Cada conjunto de dados de entrada também deve ter dados associados que descrevam o resultado esperado que os dados de entrada devem gerar.
Projetar casos de teste
Crie casos de teste com base nos diferentes resultados desejados para as entradas de teste. Por exemplo, se você inserir um número de cart?o de crédito inválido, o aplicativo deverá exibir uma mensagem de erro significativa.
Executar os casos de teste
Execute os casos de teste no aplicativo e compare os resultados reais com os resultados esperados. Se os resultados reais e esperados forem diferentes, o recurso falhou no teste e um defeito deve ser registrado.
Deliberar sobre, rastrear e resolver defeitos
Depois que um defeito é identificado, ele deve ser registrado em um sistema de rastreamento formal que seja acessível a toda a equipe do projeto. As altera??es necessárias devem ser feitas no aplicativo e o caso de teste deve ser executado novamente para confirmar a resolu??o antes que o defeito seja marcado como fechado.
As ferramentas de automa??o de testes funcionais s?o capazes de interagir com a interface do usuário do aplicativo em teste. Elas podem identificar objetos na tela, como caixas de listagem, caixas de texto e bot?es, e podem fazer sele??es, inserir dados e pressioná-los.
Muitas ferramentas de automa??o de testes funcionais incluem um gravador, que "observa" o usuário enquanto ele interage com um aplicativo e seus objetos na tela, registra os dados que ele insere no sistema e as a??es que o usuário executa, como pressionar bot?es ou selecionar menus. Essas a??es podem ent?o ser reproduzidas, usando os objetos, os dados e as a??es capturados durante a grava??o, para replicar as atividades do usuário. Os resultados dessas a??es s?o registrados pela ferramenta de teste e comparados com os resultados esperados definidos pelo engenheiro de automa??o para determinar se o teste foi aprovado ou reprovado.
Os engenheiros de automa??o de testes funcionais podem criar seus testes passo a passo usando os objetos reconhecidos pela ferramenta ou podem come?ar com uma grava??o, personalizando as etapas e parametrizando os dados para generalizá-los e permitir que os testes sejam executados em diferentes ambientes, incluindo vários navegadores e dispositivos móveis.
Atualmente, as principais ferramentas de automa??o de testes incorporam recursos de inteligência artificial (IA) que empregam técnicas avan?adas, como aprendizado de máquina, vis?o computacional, redes neurais e processamento de linguagem natural. Isso ajuda a identificar objetos na tela da mesma forma que um ser humano, a interagir e manipular objetos naturalmente e a permitir que os testes sejam escritos em linguagem simples.
Foi demonstrado que a automa??o de testes funcionais baseada em IA reduz o tempo de cria??o de testes, aumenta a cobertura de testes, aumenta a resiliência dos ativos de teste e reduz os esfor?os de manuten??o de testes.
Criar casos de teste com antecedência
N?o espere que a codifica??o do aplicativo ou do módulo seja concluída para come?ar a criar casos de teste. ? nas fases iniciais do projeto que os requisitos do usuário estar?o mais frescos. Você sempre pode alterar os casos de teste posteriormente, conforme necessário.
Automatizar
O teste funcional pode ser um processo árduo, repetitivo e demorado. Quanto mais você automatizar, mais rápido poderá garantir a funcionalidade desejada ou identificar e corrigir defeitos, e mais você economizará em tempo de teste e custos no processo de entrega do aplicativo. Talvez n?o seja possível, ou mesmo desejável, automatizar todos os casos de teste, mas apenas tirar os casos de teste mais importantes da lista manual pode melhorar muito o ROI do teste.
Entenda o processo de pensamento do usuário
Os testadores funcionais devem ter uma profunda compreens?o do processo de pensamento do usuário final. Geralmente, há diferentes tipos de usuários para cada aplicativo (compradores, vendedores, administradores, funcionários de entrada de dados, supervisores etc.). Os diferentes tipos de usuários e sua navega??o típica no aplicativo devem ser levados em considera??o em cada plano de teste.
Priorizar
Os testadores têm tempo e recursos limitados. Nem todos os recursos podem ser testados. Algumas fun??es do aplicativo s?o de alta prioridade e, portanto, devem ter prioridade de teste sobre os recursos de prioridade mais baixa.
Embora o site Functional Testing possa ser um desafio para muitas organiza??es, os benefícios de uma organiza??o de controle de qualidade de testes funcionais devidamente automatizada superam em muito esses desafios, e aproveitar o poder de ferramentas comprovadas de testes funcionais é a melhor maneira de fazer isso. Descubra como a好色先生TV? Functional Test Automation pode ajudá-lo a extrair o máximo valor de seus testes funcionais.
Automa??o de testes com tecnologia de IA
Mudar para a esquerda para uma entrega mais rápida
Teste aplicativos móveis em qualquer lugar. Amplie a produtividade
Diga adeus aos gargalos
Acelere a entrega de seus aplicativos com testes, qualidade e automa??o baseada em IA