> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tela.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Executando e revisando Casos de Teste

> Execute um Caso de Teste ou a suíte inteira contra a versão que você está vendo, leia os status, revise cada atributo e execute de novo

Uma execução produz um resultado. Uma revisão transforma esse resultado em um veredito. O Tela separa as duas coisas de propósito: um Caso de Teste cuja execução terminou está em **Revisão Pendente**, não aprovado, até que uma pessoa ou uma validação automática tenha julgado todos os atributos. Esta página cobre as duas metades: como executar, e como revisar para que a suíte tenha valor.

Tudo abaixo acontece na experiência **Testar** do Canvas de notas fiscais.

## Qual versão executa

Toda execução pertence a uma versão do Canvas. A experiência **Testar** mostra a versão que você está vendo e executa contra ela: por padrão a versão que você está editando, marcada como **Atual** no **Histórico de Versões**. Para rodar a suíte em uma versão mais antiga, abra o **Histórico de Versões** pelo botão de versão ao lado de **Publicar**, clique em **Visualizar** naquela versão e volte para **Testar**. Veja [Comparando versões](https://docs.tela.com/pt/test-cases/comparing-versions.md).

Um Caso de Teste pode ser executado quando ainda não tem execução na versão que você está vendo, quando a versão ainda é um rascunho não publicado que você está editando, ou quando a última execução dele **Falhou**, foi **Parado** ou atingiu **Tempo Esgotado**. Um Caso de Teste que já está **Concluído** nesta versão não é executado de novo por **Executar Todos**; use **Executar novamente** nele.

> [!NOTE]
>
> Executar um Caso de Teste em um rascunho que você está editando fixa aquele rascunho como versão, para que o resultado fique associado exatamente ao que foi testado. A sua próxima edição começa uma versão nova. Em Workflows, a versão precisa estar salva antes; uma edição que ainda está sendo gravada bloqueia a execução por um instante.

## Executando a suíte

O botão **Executar Todos** fica no card de resumo, no topo. O rótulo muda conforme o que ele vai fazer:

| Rótulo | Executa |
| - | - |
| **Executar Todos** | Todos os Casos de Teste que podem ser executados nesta versão |
| **Rodar Selecionados** | Os Casos de Teste que você marcou na tabela |
| **Rodar Filtrados** | Os Casos de Teste que correspondem aos filtros ativos (**Concluído**, **Revisão Pendente**, **Usuário**, **Data**, **Categorias**, **Pesquisar nome**) |
| **Executar** | Um único Caso de Teste executável |

Passe o mouse sobre o botão quando ele estiver desabilitado: a dica explica o motivo (*Crie um caso de teste primeiro*, *Os casos de teste selecionados já foram executados*, *Os casos de teste selecionados têm variáveis obrigatórias sem valor*, ou *Complete todas as etapas primeiro* em um Workflow com etapas não configuradas). Casos de Teste sem uma variável obrigatória são pulados com um aviso. As execuções contam para a cota de inferência do seu Workspace.

![Experiência Testar com três linhas marcadas e o botão Rodar Selecionados no card de resumo](https://mintcdn.com/meistrari/M2w7BduKZAFA1Sbx/images/pt/test-cases/run-selected.png?fit=max\&auto=format\&n=M2w7BduKZAFA1Sbx\&q=85\&s=9bf6b8ec6bcd6c4529e3b0961ee56004)

Para executar um Caso de Teste, abra-o e clique em **Executar** (ou pressione `Cmd`/`Ctrl` + `Enter`). Enquanto roda, o botão vira **Parar**; clicar nele cancela a execução, que passa a mostrar **Parado**.

Pela API, [`POST /test-case/{id}/run`](https://docs.tela.com/api-reference/test-case/post-test-case-id-run) executa um Caso de Teste e [`POST /test-case/run-all`](https://docs.tela.com/api-reference/test-case/post-test-case-run-all) executa vários, ambos contra um `promptVersionId`; [`POST /test-case/{id}/abort`](https://docs.tela.com/api-reference/test-case/post-test-case-id-abort) interrompe uma execução. O `run-all` aceita `testCaseIds` explícitos ou os mesmos `filters` da tabela (categorias, status, usuário, datas) e responde com os `testCaseIds` que iniciou; Casos de Teste que já estavam rodando naquela versão ficam de fora. Leia os resultados com [`GET /test-case?promptId=…&promptVersionIds=…&includeGenerations=true`](https://docs.tela.com/api-reference/test-case/get).

## Status

A coluna **Status** e o selo no topo de cada Caso de Teste seguem a última execução na versão que você está vendo.

| Status | Significado |
| - | - |
| **Execução Pendente** | Ainda não há execução nesta versão |
| **Iniciando**, **Executando** | A execução está em andamento. Os atributos aparecem conforme são produzidos |
| **Parando**, **Parado** | Você clicou em **Parar**; a execução foi cancelada |
| **Falhou**, **Tempo Esgotado** | A execução não terminou. Abra para ler o erro e depois **Executar** de novo |
| **Revisão Pendente** | A execução terminou e nenhum atributo foi revisado ainda |
| **Revisando** | Alguém revisou um atributo no último minuto e outros ainda estão pendentes |
| **Parcialmente Revisado** | Alguns atributos revisados, outros ainda pendentes |
| **Concluído** | Todo atributo tem um veredito, seu ou de uma validação |

Linhas em cinza ainda não têm execução na versão que você está vendo; as colunas de atributos ficam vazias e a pontuação não conta. Filtre a tabela com **Concluído** ou **Revisão Pendente** para encontrar o que falta, e clique em **Revisar** no card de resumo para pular para o primeiro caso em **Revisão Pendente**.

## Lendo um resultado

Clique em uma linha para abrir o Caso de Teste em tela cheia.

![Detalhe do Caso de Teste da nota escaneada, com os atributos e polegares à esquerda, o PDF à direita e a barra de progresso da revisão](https://mintcdn.com/meistrari/M2w7BduKZAFA1Sbx/images/pt/test-cases/test-case-detail.png?fit=max\&auto=format\&n=M2w7BduKZAFA1Sbx\&q=85\&s=d50f99441bb529ed67879c886de361cd)

* **Esquerda**: o título, as categorias, a data da **Primeira execução** ou **Última execução**, a origem (**Adicionado Manualmente** ou **Produção**), o botão **Executar** / **Executar novamente** e o resultado como um card por atributo do Formato de Saída. Um Canvas sem Formato de Saída mostra um único **Resultado**.
* **Direita**: as entradas. **Selecionar Variável** escolhe uma variável ou um arquivo; para um arquivo, **Arquivo** mostra o original e **Processado** mostra o texto que o Tela extraiu dele. Arraste o divisor para redimensionar, ou abra a prévia em tela cheia.
* **Cabeçalho**: o progresso da revisão (*% Revisados*), *N de M*, setas para ir ao Caso de Teste anterior ou seguinte (também as teclas ← e →) e o menu `…` com **Editar Entradas**, **Ver Código** (o JSON bruto do resultado) e **Excluir**.

Compare cada atributo com o documento à direita. Na nota escaneada, compare `total_amount` com o total impresso na página, não com o que você lembra.

### Em Workflows

O lado esquerdo lista um card por etapa, em ordem. Etapas com Formato de Saída mostram os atributos com polegares; outras etapas (código, Dividir, Recortar, condições) mostram a saída, e etapas **Map** permitem navegar por cada iteração. Uma etapa que falhou mostra o erro. Veja [Nos Casos de Teste](https://docs.tela.com/pt/workflow/outputs-and-results.md#nos-casos-de-teste).

### Em Agentes

Casos de teste de Agente mostram o raciocínio do Agente, o resultado card por card e um **Resultado da avaliação** com um veredito de aprovado ou reprovado. Veja [Lendo um resultado](https://docs.tela.com/pt/agent/testing.md#lendo-um-resultado).

## Revisando atributo por atributo

Passe o mouse sobre um atributo e dois ícones aparecem: polegar para cima (**Marcar como correto**) e polegar para baixo (**Marcar como errada**). Clique em um para registrar o seu veredito; clique de novo (**Remover avaliação**) para desfazer.

O que uma marcação faz:

* **Bom** guarda o valor como **Resposta Esperada** deste Caso de Teste para este atributo. Na próxima vez que uma execução produzir o mesmo valor, o atributo é revisado automaticamente.
* **Ruim** guarda o valor como **Resposta Errada** e abre o popover **Validações** na aba **Exemplos**, para você digitar o valor certo como **Resposta certa** na hora. Na nota com duas moedas, marque `total_amount` = `1,250.00 USD` como Ruim e adicione `1,250.00` como resposta certa.

A comparação de valores ignora maiúsculas e minúsculas e, em listas, a ordem. Itens de uma lista ou linhas de uma tabela são revisados um a um; uma lista é **Bom** quando todos os itens são.

Atributos revisados por uma validação, e não por você, carregam a marca **AUTO-REVISADO**; **Ver validações** mostra o motivo (*Corresponde exatamente a uma boa resposta*, *Validação por regra* com o raciocínio do juiz). Você sempre pode sobrescrever um veredito automático com o seu polegar. As regras e os exemplos por trás desses vereditos estão em [Regras de validação e métricas](https://docs.tela.com/pt/test-cases/validation-rules-and-metrics.md).

Cada polegar é registrado com o seu nome e horário; a coluna **Revisado Por** da tabela mostra quem revisou cada Caso de Teste.

### Concluindo uma revisão

Abaixo do resultado, quando alguns atributos não têm veredito, o bloco **Todos os atributos foram revisados?** oferece um atalho: marque **Eu revisei todos os atributos desta geração** e clique em **Marcar como revisado** para marcar todos os atributos restantes como **Bom**. Use só depois de ter olhado cada um deles de fato; é isso que leva o Caso de Teste a **Concluído** e coloca os atributos dele na **Pontuação de Precisão**.

Abra **Notas** no fim para **Adicionar uma nota** sobre a execução, por exemplo *o scan está girado 90 graus, o modelo ainda lê o total*. As notas ficam por execução e aparecem para quem abrir o Caso de Teste em seguida.

> [!NOTE]
>
> **Para desenvolvedores.** O feedback por atributo é guardado na execução como um mapa de caminho do atributo para `1` (Bom), `0` (Ruim) ou ausente, por `PATCH /generation/{id}/attribute-feedbacks-bulk`. Os caminhos seguem o Formato de Saída, com índices para itens de lista, como `line_items.2.amount`.

## O que significa passar

Não existe um único sinal de aprovado/reprovado em um Caso de Teste de Canvas. Um Caso de Teste está em ordem quando o status é **Concluído** e a barra de **Pontuação** está cheia: todo atributo tem um veredito e todo veredito é **Bom**. A tabela mostra a pontuação de cada linha; o resumo mostra a **Pontuação de Precisão** da suíte. Um Caso de Teste **Concluído** com 75% de pontuação diz que um de quatro atributos está errado nesta versão, e a célula vermelha da linha diz qual.

## Executando novamente

Um Caso de Teste **Concluído**, em **Revisão Pendente** ou **Parcialmente Revisado** mostra **Executar novamente**. Clicar abre **Executar Caso de Teste Novamente** com duas opções:

* **Executar novamente**: *Executar novamente este caso de teste com as mesmas configurações*. Uma nova execução substitui a anterior como o resultado que você vê para esta versão. Use quando o prompt não mudou e você quer verificar se a saída é estável.
* **Duplicar**: *Criar uma cópia deste caso de teste para editar antes de executar*. Use para criar uma variante, por exemplo a mesma nota com outra pergunta.

Depois de uma mudança no prompt você não precisa de **Executar novamente**: a versão nova não tem execuções, então **Executar Todos** roda tudo.

> [!TIP]
>
> Revise antes de mudar o prompt. Revisões, exemplos e regras pertencem ao Caso de Teste e são reaproveitados em todas as versões seguintes, então cada veredito que você registra agora é um que não vai precisar dar de novo.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.