Quando tem uma matriz que contém vários elementos (uma lista de conteúdo específico ou uma lista obtida a partir de passos anteriores) e precisa de executar a mesma operação em cada item da lista (por exemplo, primeiro obter uma lista de produtos e, em seguida, adicionar cada produto da lista ao carrinho de compras), precisa de utilizar um ciclo ForEach.Num ciclo ForEach, as operações dentro do ciclo serão executadas para cada elemento da matriz.A diferença em relação a um ciclo For é que não precisa de se preocupar com o número de iterações; só precisa de se concentrar no conteúdo da matriz do ciclo.Definir a matriz do ciclo: Num ciclo ForEach, precisa de definir uma matriz como objeto do ciclo. Pode utilizar uma variável ou introduzir manualmente uma matriz, como [
"a","b","c"].
Adicionar pedidos: Dentro de um ciclo ForEach, pode adicionar um ou mais pedidos, ou adicionar outros ciclos ou ramificações condicionais, etc.
Condição Break If e tratamento On Error: Pode adicionar Break if e On error ao ciclo ForEach, de forma consistente com o ciclo for mencionado acima.
Nas definições avançadas do ciclo ForEach, também pode personalizar as opções de tratamento de exceções para Break If e On Error. Para obter mais informações, consulte Regras de julgamento.
Exemplo de utilização do ForEach#
Considere dois endpoints: um para obter uma lista de informações de animais de estimação e outro para obter os detalhes de um único animal de estimação. Se precisar de obter os detalhes de um animal de estimação recentemente adicionado à lista, pode configurar este cenário utilizando um ciclo ForEach nos seus testes automatizados.1.
O primeiro passo fora do ciclo ForEach seria enviar um pedido para o endpoint da lista de informações de animais de estimação para obter os dados reais da lista. Normalmente, a resposta desta interface contém uma matriz com informações básicas sobre vários animais de estimação, como o ID e o nome do animal.
2.
Configure um ciclo ForEach com a matriz de origem como um subconjunto da matriz de animais de estimação da resposta do passo anterior.
3.
Dentro do ciclo, configure um pedido para o endpoint "Obter informações do animal de estimação" e utilize o valor do elemento do ciclo ForEach para preencher o parâmetro ID neste pedido.
Utilizar o elemento do ciclo em pedidos#
O elemento/índice atual do ciclo pode ser utilizado como uma variável local dentro dos pedidos para ajustar dinamicamente parâmetros ou corpos de pedido. Para o utilizar:1
Adicione um ciclo ForEach e inclua um pedido dentro do ciclo.
2
Clique no ícone
varinha mágica no parâmetro do pedido e selecione “Obter dados do passo anterior”.
3
Escolha a opção do ciclo, normalmente identificada como “Percorrer cada elemento em
{{array}}”.
4
Selecione “Elemento atual do ciclo”. Pode utilizar JSONPath para extrair propriedades do elemento.
5
Irá obter uma variável dinâmica como
{{$.17.element}}. Clique em "Inserir" e esta será substituída em tempo de execução pelo elemento do ciclo atual, que é um elemento da matriz do ciclo.
Elemento atual do ciclo: O sistema extrai automaticamente elementos da matriz especificada no ciclo ForEach e armazena-os na variável designada. No início de cada iteração, esta variável é atualizada com o valor do elemento atual da matriz. Se o elemento for um objeto, pode utilizar JSONPath para extrair um subcampo específico, como {{$.1.element.data.name}}.Índice atual do ciclo: O índice do ciclo atual é armazenado nesta variável. Começa em 0 e aumenta em 1 no início de cada iteração subsequente, refletindo o índice atual.