FL-2.3.2 (K1) Reconhecer que os testes funcionais, não funcionais e de caixa-branca ocorrem em qualquer nível de teste.

Tópico - Progresso:

O teste funcional inclui todo tipo de teste que verifica o comportamento de entrada-saída de um sistema.

 

Para projetar casos de teste funcionais os métodos de teste caixa-preta são usados​​, e os insumos para os testes são os requisitos funcionais.

 

Veja um exemplo de uma parte da especificação de requisitos de cálculo de preço para o sistema VSR:

 

R1: O usuário pode escolher um modelo de veículo da lista atual de modelos para configuração.

R2: Para um modelo escolhido, os itens de acessórios opcionais  são indicados. O usuário pode escolher o acessório desejado na lista.

R3: O valor total da configuração escolhida é calculado a partir de listas de preços atuais e apresentado de forma contínua.

 

Para cada requisito, pelo menos um caso de teste é concebido:

 

R2: Para um modelo escolhido, os itens de acessórios opcionais  são indicados. O usuário pode escolher o acessório desejado na lista.

 

T2.1 – Um modelo do veículo é escolhido , o seu preço base de acordo com o manual de vendas é indicado.

T2.2 – Um item acessório é selecionado , o preço deste acessório é adicionado.

T2.3 – Um item de acessório é desmarcado, o preço cai de acordo.

T2.4 – Três itens de acessórios especiais  são selecionados , o desconto entra em vigor , tal como definido na especificação.

 

Teste funcional baseado em requisitos é usado principalmente em testes de sistemas e testes de aceitação.

 


Se o propósito do software é automatizar um determinado processo de negócio, testes baseados em processos de negócios ou testes orientados a caso de uso  são outros métodos adequados de testes.


 

Do ponto de vista da revenda o VSR apoia o processo de vendas, que pode ser descrito da seguinte forma:

 

 


Uma análise de processos de negócios mostra quais processos de negócios são relevantes, quantas vezes e em que contexto eles aparecem, quais pessoas, empresas e sistemas externos estão envolvidos.


 

Testes baseados em requisitos se concentra em funções individuais do sistema (por exemplo, a transmissão de um pedido de compra).

Testes baseados em processos de negócio, concentra-se nas várias etapas do sistema (por exemplo, o processo de vendas: composto por configurar um carro, fazer o contrato de venda e a emissão do pedido de compra)Isso significa uma sequência de vários testes.

Claro que, para os usuários do sistema VSR, não é suficiente  ver que eles podem escolher e comprar um carro. Mais importante para a aceitação final é muitas vezes a facilidade com que eles podem usar o sistema. Assim, juntamente com os critérios funcionais, os critérios de não-funcionais também devem ser verificados e testados.

 

Requisitos não funcionais descrevem os atributos do comportamento funcional, ou seja , “o quão bem” o sistema deve realizar as suas funções.

 

 

A implementação de tais requisitos tem uma grande influência na satisfação do cliente com o produto e quanto eles gostam de seu uso.

 

As seguintes características não funcionais do sistema devem ser consideradas principalmente nos testes de sistema:

 

 

 

Entre os principais problemas em testar os requisitos não funcionais está a sua característica imprecisa e incompleta. Expressões como “o sistema deve ser fácil de operar” e “o sistema deve ser rápido” não são testáveis ​​desta forma. A equipe de teste deve participar nas primeiras revisões de requisitos e certificar-se que todos os requisitos não-funcionais podem ser medidos e são testáveis. Além disso, existem muitos requisitos não-funcionais que são tão fundamentais que ninguém realmente pensa em  mencioná-los em um documento de requisitos (requisitos presumidos). Mesmo esses requisitos implícitos devem ser validados, porque eles podem ser relevantes.

 

Técnicas estruturais…

(teste de caixa branca) usam informações sobre a estrutura interna do código (declarações ou decisões, hierarquia de chamadas, estruturas de menu). O objetivo é projetar e executar casos de teste suficientes para, se possível, cobrir completamente todos os itens estruturais. Técnicas estruturais são mais usadas ​​em testes de componentes e testes de integração, mas também pode ser aplicado no teste de sistema, integração de sistemas, ou teste de aceitação (por exemplo, para cobrir estruturas de menu).