O que é teste de fluxo de trabalho em teste de software? com exemplos
⚡ Resumo Inteligente
Os testes de fluxo de trabalho confirmam que cada sequência de etapas dentro de um aplicativo ainda reflete o processo de negócios para o qual foi desenvolvido, verificando cada etapa, transferência e dependência desde a primeira ação até o resultado final.
O que é teste de fluxo de trabalho?
Teste de fluxo de trabalho É um tipo de teste de software que verifica se cada fluxo de trabalho do software reflete com precisão o processo de negócio em questão. Um fluxo de trabalho é uma série de tarefas que produzem um resultado desejado e geralmente envolve várias etapas ou fases. Para qualquer processo de negócio, o teste dessas etapas sequenciais é definido como teste de fluxo de trabalho.
A distinção que importa é o escopo. Um único caso de teste O teste de fluxo de trabalho pergunta se uma função retorna a resposta correta. Já o teste de fluxo de trabalho pergunta se dez dessas funções, executadas na ordem em que um usuário real as segue, ainda entregam o resultado esperado pela empresa. Por essa razão, o teste de fluxo de trabalho pertence ao conjunto de entradas orientadas a processos. tipos de testes de software catálogo em vez de técnicas de nível unitário.
Exemplo de teste de fluxo de trabalho
Por exemplo, verifique se o sistema pode ser instalado na plataforma do usuário e se ele é executado corretamente.
Um exemplo mais complexo é um pedido online. O cliente adiciona um item ao carrinho, aplica um código de desconto, seleciona uma opção de entrega, paga e recebe um e-mail de confirmação, enquanto o armazém recebe uma instrução de separação. Cada uma dessas etapas pode ocorrer isoladamente e ainda assim falhar como um todo: o desconto pode não ser aplicado após a etapa de pagamento, ou a mensagem para o armazém pode nunca sair da fila.
Os testes de fluxo de trabalho são realizados em fases. Veja como você realizará os testes de fluxo de trabalho.
- Fase de iniciaçãoEsta fase inclui o planejamento inicial de testes e os testes de protótipos.
- Fase de elaboraçãoEsta fase inclui a definição da linha de base da arquitetura de teste.
- Fase de construçãoEsta fase inclui testes significativos em cada versão.
- Fase de transiçãoEsta fase inclui: testes de regressão e testar novamente as correções.
Como realizar testes de fluxo de trabalho
O modelo de fases acima descreve quando o trabalho acontece. A sequência abaixo descreve o que um testador realmente faz em cada uma dessas fases.
- Mapeie o processo de negócio. Desenhe o fluxo de trabalho exatamente como a empresa o executa, incluindo cada ponto de decisão, aprovação e transferência entre departamentos. Um analista de negócios geralmente é o caminho mais rápido para um mapeamento preciso. analista de negócios A documentação é a referência utilizada para verificar o mapa.
- Defina os critérios de entrada e saída. Registre o estado em que o sistema deve estar antes do início do fluxo de trabalho e o estado que comprova sua conclusão. Sem ambos, os testadores discordam sobre se uma execução foi aprovada.
- Elabore os casos de teste. Crie um caso de erro para cada caminho no fluxo de trabalho, e não um para cada tela. Numere as etapas, descreva o resultado esperado para cada uma e atribua um identificador único a cada caso para que os defeitos possam ser identificados. tracvoltou para um caminho.
- Prepare dados de teste realistas. Reutilize registros anonimizados com formato de produção em vez de valores inventados. Códigos de desconto, regras fiscais e formatos de endereço são os locais comuns onde dados sintéticos ocultam defeitos reais.
- Execute primeiro o caminho principal. Confirme se o fluxo de trabalho é concluído de ponta a ponta antes de interromper qualquer coisa deliberadamente. Uma falha aqui invalida todos os resultados negativos subsequentes.
- Quebre a corrente de propósito. Cancelamentos no meio do processo, envio de um valor inválido em um ponto de decisão, expiração do tempo limite da sessão e rejeição de uma aprovação. Os defeitos interessantes residem nesses caminhos interrompidos, não no caminho principal.
- Reporte, corrija e teste novamente. Registre cada defeito na etapa que o gerou e, em seguida, execute novamente todo o fluxo de trabalho após a correção. Uma etapa reparada frequentemente desloca a falha um estágio adiante na cadeia.
Fluxos de trabalho estáveis que se repetem a cada versão são os candidatos mais fortes para automação, porque as mesmas etapas sequenciais são executadas de forma idêntica todas as vezes e o script se paga em poucos ciclos.
Quem realizará o teste de fluxo de trabalho?
O teste de fluxo de trabalho é uma tarefa compartilhada, pois nenhuma função individual tem visão de toda a cadeia. Quatro funções dividem o trabalho, cada uma com suas próprias responsabilidades.
- Engenheiro de testes
- Planeje metas e cronograma de teste
- Definir casos de teste e procedimentos
- Avalie os resultados dos testes
- Engenheiro de componentes
- Desenvolvimento de componentes de teste
- Automatize alguns dos procedimentos de teste
- Testador de integração
- Executando testes de integração e relatando defeitos
- testador de sistema
- Executando testes de sistema e relatando defeitos
O que testar em um fluxo de trabalho
Os fluxos de trabalho do software são documentados no Documento de Requisitos de Negócio, e esse documento é a fonte de referência para a cobertura de testes. Os testes de fluxo de trabalho também incluirão partes dos testes de sistema e de integração.
Uma análise completa de um fluxo de trabalho examina mais do que apenas as telas que o usuário vê.
- Seqüência: Os passos são executados na ordem documentada e não podem ser ignorados ou repetidos fora de ordem.
- Transferência de dados: Os valores inseridos no início da cadeia permanecem intactos até a última etapa e em qualquer sistema subsequente.
- Funções e permissões: Cada etapa está disponível apenas para a função autorizada a executá-la.
- Caminhos interrompidos: Cancelamento, tempo limite, rejeição e nova tentativa deixam o fluxo de trabalho em um estado definido.
- Artefatos: O modelo de teste de fluxo de trabalho abrange casos de teste, procedimentos de teste, componentes de teste e subsistemas de teste, de modo que cada um deles é verificado por sua vez.
- Notificações: E-mails, alertas e mensagens em fila são enviados uma única vez, com o conteúdo correto, na etapa correta.
Teste de fluxo de trabalho vs. teste de ponta a ponta vs. teste de sistema
Essas três técnicas se sobrepõem o suficiente para serem confundidas, mas respondem a perguntas diferentes. A tabela define os limites.
| Aspecto | Teste de fluxo de trabalho | Teste de ponta a ponta | Teste de sistema |
| Pergunta respondida | O software é compatível com o processo de negócio? | Todo o processo funciona em todos os sistemas conectados? | O sistema montado atende aos requisitos? |
| Unidade de cobertura | Um processo de negócios, passo a passo. | Uma única jornada do usuário, do front-end ao back-end. | A construção completa do aplicativo |
| Referência primária | Documento de Requisitos de Negócios | Mapa da jornada do usuário | Especificação de requisitos do sistema |
| Proprietário típico | Engenheiro de testes com contribuições de analista de negócios | Engenheiro de Automação ou de Garantia da Qualidade | testador de sistema |
Na prática, um teste de fluxo de trabalho é frequentemente a especificação de um teste de ponta a ponta é construído a partir de, enquanto teste do sistema Fornece a versão estável na qual o fluxo de trabalho é executado.
Melhores Práticas e Desafios Comuns
As equipes que obtêm valor com os testes de fluxo de trabalho tendem a seguir um pequeno conjunto de hábitos semelhantes.
- Priorize os fluxos de trabalho que apresentam riscos financeiros ou regulatórios em detrimento dos fluxos de trabalho menos frequentes.
- Descreva cada etapa e o resultado esperado em linguagem clara e inequívoca.
- Mantenha um conjunto de dados de teste reutilizável e realista para que as execuções permaneçam comparáveis em diferentes ambientes.
- Teste cada fluxo de trabalho com entradas válidas e com entradas inválidas em cada ponto de decisão.
- Atualize os casos de teste assim que o processo de negócio subjacente for alterado.
Os obstáculos recorrentes são igualmente previsíveis.
- Processos não documentados: O fluxo de trabalho reside na mente das pessoas, portanto, os testadores estão validando com base em uma suposição.
- Tempos de execução longos: Um fluxo de trabalho que abrange aprovações pode levar horas, o que limita a frequência com que é executado manualmente.
- Deriva ambiental: Os sistemas subsequentes na cadeia estão inoperantes ou obsoletos, e os defeitos só aparecem na produção.
- Automação frágil: Os scripts vinculados ao layout da tela são interrompidos sempre que a interface muda, mesmo quando o processo não mudou.
- Colisões de dados: Execuções paralelas consomem os mesmos registros, produzindo falhas que se assemelham a defeitos do produto.
