Diretrizes:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Cenário 1 | Fluxo Básico | |||
| Cenário 2 | Fluxo Básico | Fluxo Alternativo 1 | ||
| Cenário 3 | Fluxo Básico | Fluxo Alternativo 1 | Fluxo Alternativo 2 | |
| Cenário 4 | Fluxo Básico | Fluxo Alternativo 3 | ||
| Cenário 5 | Fluxo Básico | Fluxo Alternativo 3 | Fluxo Alternativo 1 | |
| Cenário 6 | Fluxo Básico | Fluxo Alternativo 3 | Fluxo Alternativo 1 | Fluxo Alternativo 2 |
| Cenário 7 | Fluxo Básico | Fluxo Alternativo 4 | ||
| Cenário 8 | Fluxo Básico | Fluxo Alternativo 3 | Fluxo Alternativo 4 |
OBSERVAÇÃO: Por praticidade, os Cenários 5, 6 e 8 apenas descrevem uma única execução do loop indicado pelo Fluxo Alternativo 3.
É possível obter os casos de teste para cada cenário através da identificação da condição específica que causará a execução desse cenário de caso de uso específico.
Por exemplo, suponha que o caso de uso descrito no diagrama acima indicou o seguinte para o Fluxo Alternativo 3:
"Ocorrerá esse fluxo de eventos se o valor digitado no Passo 2 acima, "Digitar o Valor da Retirada" for maior que o saldo atual da conta. O sistema exibirá uma mensagem de aviso e, depois, retornará ao Passo 2 do fluxo básico "Digitar o Valor da Retirada" acima, onde o cliente do banco poderá digitar um novo valor de retirada."
Com essas informações, você pode começar a identificar os casos de teste necessários para a execução do fluxo alternativo 3:
| ID de Caso de Teste | Cenário | Condição | Resultado Esperado |
| TC x | Cenário 4 | Passo 2 - Valor da Retirada > Saldo da Conta | Retorna ao Passo 2 do fluxo básico |
| TC y | Cenário 4 | Passo 2 - Valor da Retirada < Saldo da Conta | Não executa o Fluxo Alternativo 3, segue o fluxo básico |
| TC z | Cenário 4 | Passo 2 - Valor da Retirada = Saldo da Conta | Não executa o Fluxo Alternativo 3, segue o fluxo básico |
OBSERVAÇÃO: os casos de teste mostrados acima são muito simples, já que nenhuma outra informação foi fornecida. Os casos de teste raramente são tão simples.
Veja a seguir um exemplo mais realista de obtenção de casos de teste a partir de casos de uso.
Exemplo:

Atores e casos de uso em um caixa eletrônico.
A tabela a seguir contém o fluxo básico e alguns fluxos alternativos para o caso de uso Retirada em Dinheiro no diagrama acima:
| Fluxo Básico | Esse Caso de Uso começa com o caixa eletrônico no Estado Pronto.
O Caso de Uso termina com o caixa eletrônico no Estado Pronto. |
| Fluxo Alternativo 1 - Cartão Inválido. | No Passo 2 do Fluxo Básico - Verificar o Cartão Bancário, se o cartão não for válido, será ejetado com uma mensagem apropriada. |
| Fluxo Alternativo 2 - Caixa Eletrônico sem Dinheiro | No Passo 5 do Fluxo Básico - Opções do Caixa Eletrônico, se o caixa eletrônico estiver sem dinheiro, a opção "Retirada em Dinheiro" não estará disponível. |
| Fluxo Alternativo 3 - Fundos insuficientes no caixa eletrônico | No Passo 6 do Fluxo Básico - Digitar o Valor, se o caixa eletrônico não contiver fundos suficientes para fornecer o valor solicitado, o sistema exibirá uma mensagem apropriada e retornará ao Passo 6 do fluxo básico - Digitar o Valor. |
| Fluxo Alternativo 4 - Senha Incorreta | No Passo 4 do Fluxo Básico - Verificar a Conta e a Senha, o cliente tem três chances de digitar a senha correta. Se for digitada uma senha incorreta, o caixa eletrônico exibirá a mensagem apropriada, e se houver novas tentativas, esse fluxo retornará ao Passo 3 do Fluxo Básico - Digitar a Senha. Se na última tentativa o número PIN digitado estiver incorreto, o cartão será retido, o caixa eletrônico retornará ao Estado Pronto, e esse caso de uso será encerrado. |
| Fluxo Alternativo 5 - Nenhuma Conta | No Passo 4 do Fluxo Básico - Verificar a Conta e a Senha, se o Sistema bancário retornar um código indicando que a conta não foi encontrada ou que ela não permite retiradas, o caixa eletrônico exibirá a mensagem apropriada e retornará ao Passo 9 do Fluxo Básico - Devolver o Cartão. |
| Fluxo Alternativo 6 - Fundos Insuficientes na Conta | No Passo 7 do Fluxo Básico - Autorização, o Sistema bancário exibe um código indicando que o saldo da conta é inferior ao valor digitado no Passo 6 do Fluxo Básico - Digitar o Valor; o caixa eletrônico exibe a mensagem apropriada e retorna ao Passo 6 do Fluxo Básico - Digitar o Valor. |
| Fluxo Alternativo 7 - Atingido o valor máximo diário para retirada | No Passo 6 do Fluxo Básico - Autorização, o Sistema bancário exibe um código indicando que, com essa solicitação de retirada, o cliente terá excedido o valor máximo permitido em um período de 24 horas; o caixa eletrônico exibe a mensagem apropriada e retorna ao Passo 6 do Fluxo Básico - Digitar o Valor. |
| Fluxo Alternativo x - Erro de Log | Se no Passo 10 do Fluxo Básico - Recibo, não for possível atualizar o log, o caixa eletrônico entrará no "modo de segurança" em que todas as funções serão suspensas. Um alarme apropriado será enviado ao Sistema Bancário para indicar que o caixa eletrônico suspendeu a operação. |
| Fluxo Alternativo y - Encerramento | O cliente pode, a qualquer momento, decidir terminar a transação (encerrar). A transação é interrompida e o cartão é ejetado. |
| Fluxo Alternativo z - "Paralisação" | O caixa eletrônico contém vários sensores que monitoram funções distintas, como alimentação, pressão exercida nas várias portas e passagens, e detectores de movimento. Se a qualquer momento um sensor for ativado, um sinal de alarme será enviado à Polícia, e o caixa eletrônico entrará no "modo de segurança" em que todas as funções serão suspensas até que sejam executadas as ações de reinício/reinicialização apropriadas. |
|
|
|
É possível obter os cenários a seguir a partir desse caso de uso
| Cenário 1 - Retirada em dinheiro bem-sucedida | Fluxo Básico | |
| Cenário 2 - Caixa eletrônico sem dinheiro | Fluxo Básico | Fluxo Alternativo 2 |
| Cenário 3 - Fundos Insuficientes no Caixa Eletrônico | Fluxo Básico | Fluxo Alternativo 3 |
| Cenário 4 - Senha Incorreta (novas tentativas) | Fluxo Básico | Fluxo Alternativo 4 |
| Cenário 5 - Senha incorreta (sem nova tentativa) | Fluxo Básico | Fluxo Alternativo 4 |
| Cenário 6 - Nenhuma Conta/tipo de conta incorreto | Fluxo Básico | Fluxo Alternativo 5 |
| Cenário 7 - Saldo Insuficiente em Conta | Fluxo Básico | Fluxo Alternativo 6 |
OBSERVAÇÃO: Por praticidade, os loops nos Fluxos alternativos 3 e 6 (Cenários 3 e 7) e as combinações de loops não foram incluídos na tabela acima.
Para cada um desses sete cenários, é necessário identificar casos de teste. É possível identificar e gerenciar os casos de teste usando matrizes ou tabelas de decisão. Veja a seguir um formato comum, em que cada linha representa um caso de teste individual, e as colunas identificam informações de caso de teste. Nesse exemplo, para cada caso de teste, há um ID, uma Condição (ou descrição) e todos os elementos que participam do caso de teste (como entrada ou já no banco de dados) e o resultado esperado.
Para desenvolver a matriz, primeiro identifique quais elementos de dados são necessários para a execução dos cenários de caso de uso. Em seguida, para cada cenário, identifique pelo menos um caso de teste que contenha a condição apropriada para executar o cenário. Por exemplo, na matriz a seguir, V (válido) é usado para indicar que essa condição deve ser VÁLIDA para que o fluxo seja executado, e I (inválido) é usado para indicar a condição que disparará o fluxo alternativo desejado. Na tabela a seguir, "n/a" indica que essa condição não é aplicável ao caso de teste.
| ID do TC | Cenário/Condição | Senha
|
No da Conta
|
Valor Digitado
(ou escolhido)
|
Valor na Conta
|
Valor no Caixa Eletrônico
|
Resultado Esperado |
| CW1. | Cenário 1 - Retirada em Dinheiro Bem-sucedida | V | V | V | V | V | Retirada em dinheiro bem-sucedida. |
| CW2. | Cenário 2 - Caixa Eletrônico sem Dinheiro | V | V | V | V | I | Opção Retirada em Dinheiro indisponível, fim do caso de uso |
| CW3. | Cenário 3 - Fundos insuficientes no caixa eletrônico | V | V | V | V | I | Mensagem de aviso, retorno ao Passo 6 do Fluxo Básico - Digitar o Valor |
| CW4. | Cenário 4 - Senha Incorreta (> 1 nova tentativa) | I
|
V | n/a | V | V | Mensagem de aviso, retorno ao Passo 4 do Fluxo Básico, Digitar a Senha |
| CW5. | Cenário 4 - Senha Incorreta (= 1 nova tentativa) | I
|
V | n/a | V | V | Mensagem de aviso, retorno ao Passo 4 do Fluxo Básico, Digitar a Senha |
| CW6. | Cenário 4 - Senha Incorreta (= sem novas tentativas) | I
|
V | n/a | V | V | Mensagem de aviso, cartão retido, fim do caso de uso |
Na matriz acima, os seis casos de teste executam os quatro cenários. Para o Fluxo Básico, o caso de teste CW1 acima é denominado caso de teste positivo. Ele executa, sem desvios, o caminho do Fluxo Básico através do caso de uso. O teste abrangente do Fluxo Básico deve incluir casos de teste negativos para garantir que esse fluxo só seja utilizado quando as condições estiverem corretas. Os casos de teste negativos são representados pelos casos de teste CW2 a 6 (a célula sombreada indica a condição necessária para executar os fluxos alternativos). Embora esses casos de teste sejam negativos para o Fluxo Básico, são positivos para os Fluxos alternativos 2 a 4, e existe pelo menos um caso de teste negativo em cada um desses Fluxos Alternativos (CW1 - o Fluxo Básico).
O Cenário 4 é um exemplo em que não é suficiente haver apenas um caso de teste positivo e um negativo por cenário. Para testar completamente o Cenário de teste 4 - Senha Incorreta, são necessários pelo menos três casos de teste positivos (para disparar o Cenário 4):
Observe que, na matriz acima, nenhum valor real foi digitado para as condições (dados). A vantagem de criar a matriz do caso de teste dessa maneira é a facilidade de ver as condições que estão sendo testadas. Também é muito fácil determinar se casos de teste suficientes foram identificados, já que você precisa apenas observar os Vs e Is (ou como feito aqui - as células sombreadas). Na tabela acima, há diversas condições para as quais não há células sombreadas. Portanto, estão faltando casos de teste como, por exemplo, para o Cenário 6 - Nenhuma Conta ou Tipo de Conta Incorreto e para o Cenário 7 - Saldo Insuficiente em Conta.
Depois que todos os casos de teste forem identificados, será necessário revisá-los e validá-los para garantir a exatidão e adequação, bem como para eliminar casos de teste redundantes ou equivalentes. Consulte Pontos de Verificação: Caso de Teste para obter mais detalhes.
Após a aprovação dos casos de teste, será possível identificar os valores reais dos dados (na matriz de implementação do caso de teste) e criar os dados de teste (consulte Diretrizes: Dados de Teste para obter mais informações sobre os dados de teste).
| ID do TC | Cenário/Condição | Senha
|
No da Conta
|
Valor Digitado
(ou escolhido)
|
Valor na Conta
|
Valor no Caixa Eletrônico
|
Resultado Esperado |
| CW1. | Cenário 1 - Retirada em Dinheiro Bem-sucedida | 4987 | 809 - 498 | 50.00 | 500.00 | 2,000 | Retirada em dinheiro bem-sucedida. Saldo da conta atualizado para 450,00 |
| CW2. | Cenário 2 - Caixa Eletrônico sem Dinheiro | 4987 | 809 - 498 | 100,00 | 500,00 | 0,00 | Opção Retirada em Dinheiro indisponível, fim do caso de uso |
| CW3. | Cenário 3 - Fundos insuficientes no caixa eletrônico | 4987 | 809 - 498 | 100,00 | 500,00 | 70,00 | Mensagem de aviso, retorno ao Passo 6 do Fluxo Básico - Digitar o Valor |
| CW4. | Cenário 4 - Senha Incorreta (> 1 nova tentativa) | 4978
|
809 - 498 | n/a | 500,00 | 2.000 | Mensagem de aviso, retorno ao Passo 4 do Fluxo Básico, Digitar a Senha |
| CW5. | Cenário 4 - Senha Incorreta (= 1 nova tentativa) | 4978
|
809 - 498 | n/a | 500,00 | 2.000 | Mensagem de aviso, retorno ao Passo 4 do Fluxo Básico, Digitar a Senha |
| CW6. | Cenário 4 - Senha Incorreta (= sem novas tentativas) | 4978
|
809 - 498 | n/a | 500,00 | 2.000 | Mensagem de aviso, cartão retido, fim do caso de uso |
Os casos de teste acima são apenas alguns dos necessários para verificar o Caso de Uso de Retirada em Dinheiro, referente a essa iteração. Outros casos de teste necessários contêm:
Em futuras iterações, quando outros fluxos forem implementados, os casos de teste serão necessários para:
Ao identificar os casos de teste funcionais, verifique se:
Consulte também Diretrizes: Dados de Teste para obter informações adicionais sobre os dados de teste.
Nem todos os requisitos de um objetivo de teste serão refletidos em casos de uso. Requisitos não-funcionais, como desempenho, segurança e acesso, e requisitos de configuração especificam comportamentos ou características adicionais do objetivo do teste. A Especificação Suplementar é a principal fonte de obtenção de casos de teste para esses comportamentos adicionais.
Veja a seguir as diretrizes para obtenção desses casos de teste adicionais:
A principal entrada para os casos de teste de desempenho são as Especificações Suplementares que contêm os requisitos não-funcionais (consulte Artefato: Especificações Suplementares). Use as seguintes diretrizes ao obter casos de teste para o teste de desempenho:
Como nos casos de teste para testes funcionais, normalmente haverá mais de um caso de teste por caso de uso/requisito. É mais comum haver um caso de teste que esteja abaixo do valor limite de desempenho, outro no valor limite e um terceiro acima desse valor.
Além dos critérios de desempenho acima, verifique se você conseguiu identificar as condições específicas que afetam os tempos de resposta, inclusive:
Capture casos de teste para o teste de desempenho em matrizes semelhantes às usadas para o teste funcional.
Consulte também Diretrizes: Dados de Teste para obter informações adicionais sobre os dados de teste.
Veja a seguir alguns exemplos dos diferentes tipos de Testes de Desempenho:
Para o Teste de Carga:
| ID do TC | Carga de Trabalho | Condição
|
Resultado Esperado |
| PCW1. |
1 (Caixa eletrônico único) |
Transação de Retirada Concluída |
A transação concluída (andamento independente do ator) ocorre em < de 20 segundos |
| PCW2. |
2 (1.000 caixas eletrônicos simultâneos) |
Transação de Retirada Concluída |
A transação de retirada concluída (andamento independente de ator) ocorre em < de 30 segundos |
| PCW3. |
3 (10.000 caixas eletrônicos simultâneos) |
Transação de Retirada Concluída |
A transação concluída (andamento independente de ator) ocorre em < de 50 segundos |
Para o Teste de Esforço:
| ID do TC | Carga de Trabalho | Condição
|
Resultado Esperado |
| SCW1. |
2 (1.000 caixas eletrônicos simultâneos) |
Bloqueio do banco de dados - 2 caixas eletrônicos solicitando a mesma conta |
Solicitações do caixa eletrônico em fila |
| SCW2. |
2 (1.000 caixas eletrônicos simultâneos) |
A comunicação com o Sistema Bancário não está disponível |
A transação está em fila ou seu tempo está esgotado |
| SCW3. |
2 (1.000 caixas eletrônicos simultâneos) |
A comunicação com o Sistema Bancário termina durante a transação |
Uma mensagem de aviso é exibida |
Os atores e os casos de uso descrevem a interação entre os usuários externos do sistema e as ações executadas pelo sistema a fim de gerar um valor para determinado ator. Os sistemas complexos contêm vários atores, e é essencial desenvolvermos casos de teste para garantir que apenas esses atores especificados executem os casos de uso. Isso ocorrerá especialmente se houver diferenças no fluxo de eventos do caso de uso com base no tipo de ator.
Por exemplo, nos casos de uso de caixas eletrônicos, será possível executar diversos fluxos de eventos de caso de uso para o ator "Cliente de Banco" se seu cartão e sua conta forem do banco que possui o caixa eletrônico versus o "Cliente de Banco" que usa um cartão (e conta) de um banco concorrente, ou tenta usar um cartão bancário não participante.
Siga as mesmas diretrizes listadas acima para os casos de teste funcionais.
Consulte também Diretrizes: Dados de Teste para obter informações adicionais sobre os dados de teste.
Exemplo de casos de teste para Segurança e Acesso:
| ID do TC | Condição | Cartão
(V indica cartão válido) |
Leitor de Cartões
(V indica que o leitor está funcionando corretamente) |
Rede do Banco | Resultado Esperado |
| ACW1. | Na Rede Bancária | V | V | V | Todos os Casos de Uso disponíveis |
| ACW2. | Fora da rede bancária | V | V | I | Apenas caso de uso de retirada em dinheiro |
| ACW3. | Não é possível ler o cartão | I | V | V | Mensagem de Aviso, Cartão ejetado |
| ACW4. | Cartão indicado como roubado | I | V | V | Mensagem de Aviso, cartão retido |
| ACW5. | Cartão expirado | I | V | V | Mensagem de aviso, cartão retido |
Em sistemas distribuídos comuns, pode haver várias combinações de hardware e software permitidas que serão suportadas. O teste deve ser executado para verificar se o objetivo do teste funciona ou é executado de forma aceitável em configurações distintas, como em diversos sistemas operacionais, navegadores ou velocidades de CPU. Além disso, o teste também precisa abranger combinações de componentes para detectar defeitos provenientes de interações dos diversos componentes, por exemplo, garantir que a versão das DLLs instaladas por um aplicativo não entre em conflito com as versões das mesmas DLLs esperadas por outro aplicativo.
Para obter casos de teste para testes de configuração, use as seguintes diretrizes:
O teste de instalação precisa verificar se é possível instalar o objetivo do teste em todos os possíveis cenários de instalação. Os cenários de instalação podem incluir a instalação do objetivo do teste pela primeira vez ou a instalação de uma nova versão ou build desse objetivo de teste (em uma máquina com a versão anterior). O teste de instalação também deve garantir que o objetivo do teste seja executado de forma aceitável quando ocorrerem condições anormais, como espaço em disco insuficiente.
Os casos de teste devem abranger os cenários de instalação do software, inclusive:
Os programas de instalação para software cliente-servidor têm um conjunto especializado de casos de teste. Diferente dos sistemas baseados em host, o programa de instalação geralmente é dividido entre o servidor e o cliente. Desse modo, é importante que o teste de instalação execute a instalação de todos os componentes do objetivo do teste, inclusive o cliente, as camadas intermediárias e os servidores.
O ideal é que você encontre todos os recursos necessários para obter os casos de teste nos artefatos Modelo de Casos de Uso, Modelo de Design e Especificação Suplementar. Contudo, não é incomum que, nesse ponto, você precise complementar o que for encontrado.
Estes são alguns exemplos:
Na maioria dos casos, você pode encontrar esses casos de teste criando variáveis ou agregados dos casos de teste que você obteve a partir daqueles identificados anteriormente.
O teste unitário exige a avaliação da estrutura interna da unidade e de suas características comportamentais. O teste da estrutura interna exige conhecimento de como a unidade foi implementada. Os testes baseados nesse conhecimento são denominados testes caixa branca. O teste das características comportamentais de uma unidade concentram-se nos comportamentos da unidade que podem ser observados externamente, sem conhecimento nem preocupação com sua implementação. Os testes baseados nesse método são conhecidos como testes caixa preta. A obtenção de casos de teste com base nos dois métodos é descrita a seguir.
Teoricamente, você deve testar todo caminho possível através do código. Atingir essa meta nas unidades, embora sejam muito simples, é impraticável ou quase impossível. Na pior das hipóteses, você deve testar todos os caminhos decisão-a-decisão (caminho DD) pelo menos uma vez, o que resulta na execução de todas as instruções. Em geral, uma decisão é uma instrução if, e um caminho DD é aquele que une duas decisões.
Para atingir esse nível de cobertura de teste, recomenda-se escolher dados de teste que permitam avaliar cada decisão de todas as maneiras possíveis. Com essa finalidade, os casos de teste devem garantir que:
Use as ferramentas de cobertura de código para identificar o código não experimentado pelo teste caixa branca. O teste de confiabilidade deve ser realizado simultaneamente com o teste caixa branca.
Exemplo:
Suponha que você execute um teste de estrutura em uma função que seja membro da classe Conjunto de Inteiros. O teste - com a ajuda de uma pesquisa binária - verifica se o conjunto contém determinado inteiro.

A função-membro e seu fluxograma correspondente. As setas pontilhadas ilustram como você pode usar dois casos de teste para executar todas as instruções pelo menos uma vez.
Teoricamente, para que uma operação seja totalmente testada, o caso de teste deve percorrer todas as combinações de rotas contidas no código. No membro, há três rotas alternativas dentro do while-loop. O caso de teste pode percorrer o loop várias vezes ou nenhuma. Se o caso de teste não percorrer o loop, haverá apenas uma rota através do código. Se ele percorrer o loop uma vez, haverá três rotas. Se percorrer duas vezes, haverá seis rotas e assim por diante. Portanto, o número total de rotas será 1+3+6+12+24+48+..., o que, na prática, é um número não gerenciável de combinações de rota. Esse é o motivo pelo qual você deve escolher um subconjunto de todas as rotas. Neste exemplo, você pode usar dois casos de teste para executar todas as instruções. Em um caso de teste, você pode escolher Conjunto de Inteiros = {1,5,7,8,11} e t = 3 como os dados de teste. No outro caso de teste, você pode escolher Conjunto de Inteiros = {1,5,7,8,11} e t = 8.
Consulte Diretrizes: Teste Unitário para obter informações adicionais
A finalidade de um teste caixa preta é verificar o comportamento especificado da unidade, sem observar como a unidade implementa esse comportamento. Os testes caixa preta se concentram e se baseiam na entrada e saída da unidade.
Particionamento de equivalência é uma técnica destinada a reduzir o número de testes necessário. Para cada operação, você deve identificar as classes de equivalência dos argumentos e os estados dos objetos. Uma classe de equivalência é um conjunto de valores de acordo com o qual o objeto deve se comportar. Por exemplo, um Conjunto contém três classes de equivalência: vazio, algum elemento e cheio.
Use as ferramentas de cobertura de código para identificar o código não experimentado pelo teste caixa branca. O teste de confiabilidade deve ser realizado simultaneamente com o teste caixa preta.
As duas subseções a seguir descrevem como identificar os casos de teste através da seleção dos dados deteste para argumentos específicos.
Um argumento de entrada é aquele usado por uma operação. Você deve criar casos de teste usando argumentos de entrada para cada operação, em cada uma das seguintes condições de entrada:
Lembre-se de tratar o estado do objeto como um argumento de entrada. Se, por exemplo, você testar uma operação de adição em um Conjunto de objetos, deverá testar a adição com valores de todas as classes de equivalência do Conjunto, ou seja, com um Conjunto completo, com algum elemento no Conjunto e com um Conjunto vazio.
Um argumento de saída é aquele alterado por uma operação. Um argumento pode ser de entrada ou de saída. Selecione a entrada para que a saída esteja de acordo com o seguinte:
Lembre-se de tratar o estado do objeto como um argumento de saída. Se, por exemplo, você testar uma operação de exclusão em uma Lista, deverá escolher valores de entrada de modo que a Lista fique cheia, contenha algum elemento ou fique vazia após a execução da operação (teste com valores de todas as respectivas classes de equivalência).
Se o objeto for controlado por estado (a reação varia de acordo com o estado do objeto), você deve usar uma matriz de estado, conforme a mostrada na figura a seguir.

Uma matriz de estado para teste. Você pode testar todas as combinações de estado e de estímulos na base da matriz.
Consulte Diretrizes: Teste Unitário para obter informações adicionais
O teste de aceitação do produto é o teste final antes da implantação do software. O objetivo desse teste é verificar se o software está pronto e pode ser usado pelos usuários finais para executar as funções e as tarefas para as quais o software foi criado. Esse teste geralmente envolve mais do que a verificação da integridade do software. Também envolve todos os artefatos de produto fornecidos ao(s) cliente(s), como treinamento, documentação e pacotes.
É possível obter casos de teste para o(s) artefato(s) de software de acordo com o descrito nas seções anteriores. Dependendo do grau e da formalidade do teste de aceitação do produto, os casos de teste serão iguais ou semelhantes aos identificados acima (formais) ou um subconjunto (informais). Independentemente da profundidade dos casos de teste, é necessário haver um acordo entre eles e o Plano de Aceitação do Produto antes que o teste do produto seja implementado e executado.
A avaliação dos artefatos que não são de software varia principalmente de acordo com o artefato que está sendo avaliado. Consulte as Diretrizes e as Listas de Verificação de cada artefato específico que não seja de software para obter informações sobre a finalidade e a maneira de avaliá-lo.
O teste de regressão compara dois builds ou duas versões do mesmo objetivo de teste e identifica diferenças como possíveis defeitos. Desse modo, ele pressupõe que uma nova versão deve se comportar como uma versão anterior e verifica se defeitos não foram introduzidos como resultado das mudanças.
O ideal é que todos os casos de teste em uma iteração sejam usados como casos de teste nas iterações posteriores. Use as diretrizes a seguir para identificar, criar e implementar os casos de teste que maximizam o valor do teste de regressão e da reutilização, ao mesmo tempo que minimizam a manutenção:
|
Rational Unified Process
|