-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
13 changed files
with
687 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
--- | ||
capitulo: 4 | ||
indice: 4.1 | ||
order: 2 | ||
subcapitulo: false | ||
title: Visão Geral das Técnicas de Teste | ||
--- | ||
|
||
<p> | ||
As técnicas dão suporte ao testador nas atividades de Análise do Teste (O que testar ?) e de Modelagem/Projeto do teste (Como testar ?). Ajudando a desenvolver casos de teste, definir as condições de teste, identificar os itens de cobertura e os dados de teste. | ||
Aqui temos: | ||
</p> | ||
|
||
<div> | ||
<span><b>Técnicas de Teste Caixa-Preta:</b></span> | ||
<ul> | ||
<li>Baseada em Especificações.</li> | ||
<li>Analisa o comportamento do objeto de teste, ou seja, se o código (estrutura interna) mudar e o comportamento permanecer o mesmo, os casos de teste ainda serão úteis.</li> | ||
</ul> | ||
</div> | ||
|
||
<div> | ||
<span><b>Técnicas de Teste Caixa-Branca:</b></span> | ||
<ul> | ||
<li>Baseada na Estrutura interna e processamento do objeto de teste.</li> | ||
<li>Dependem da implementação do projeto e do objeto de teste.</li> | ||
</ul> | ||
</div> | ||
|
||
<div> | ||
<span><b>Técnicas de Teste Baseada na Experiência:</b></span> | ||
<ul> | ||
<li>Baseadas no conhecimento e experiência do Testador, dependendo de suas habilidades.</li> | ||
<li>São complementares as técnicas caixa-branca e caixa-preta, visto que podem detectar defeitos que poderiam passar despercebidos por estas.</li> | ||
</ul> | ||
</div> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
--- | ||
capitulo: 4 | ||
indice: 4.2.1 | ||
order: 4 | ||
subcapitulo: true | ||
title: Particionamento de Equivalência (EP) | ||
--- | ||
|
||
<p> | ||
Divide os dados em partições (partições de equivalência), onde todos os elementos desta partição serão processados da mesma forma pelo objeto de teste, ou seja, se um defeito for detectado para um valor, o mesmo defeito também será detectado para outros valores da mesma partição. | ||
</p> | ||
|
||
<p> | ||
Qualquer elemento de dados pode ser particionado. Ex.: Entradas, saídas, itens de configuração, valores internos, relacionados ao tempo e parâmetros de interface. | ||
</p> | ||
|
||
<!-- TODO: Pesquisar o que seriam particições Contínuas ou discretas, ordenadas ou não ordernadas, finitas ou infinitas --> | ||
<p> | ||
Podem ser divididas em <b>Partições Válidas</b> e <b>Partições inválidas</b>. As partições válidas contém valores válidos que devem ser processados pelo objeto de teste. As partições inválidas contém valores inválidos que devem ser ignorados ou rejeitados pelo objeto de teste. | ||
</p> | ||
|
||
<p>Each Choice Coverage (ECC): Cobertura de Cada Escolha, é um critério de cobertura simples, no qual exige que os casos de teste executem cada partição de cada conjunto de partições pelo menos uma vez. </p> | ||
|
||
<p> | ||
Os itens de <b>cobertura</b> são as partições de equivalência que foram identificadas. | ||
Para 100% de cobertura, os casos de teste devem executar todas as partições (válidas e inválidas), pelo menos 1 vez. O resultado é expresso em porcentagem, sendo a fórmula: O Número de Partições Executadas dividido pelo Número Total de Partições existentes, no qual o resultado representado pela letra 'Y', será convertido em porcentagem resultando na porcentagem de Cobertura alcançada pelo Particionamento de Equivalência, representado pela letra 'C' | ||
</p> | ||
|
||
<p> | ||
<div class="d-flex flex-lg-row flex-md-row flex-sm-column justify-content-center"> | ||
<div class="p-1"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Nº Executadas </mn> | ||
</mrow> | ||
<mn>Nº Total</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> Y </mn> | ||
</math> | ||
</div> | ||
<div class="p-1"> | ||
→ | ||
</div> | ||
<div class="p-1"> | ||
<math > | ||
<mfrac> | ||
<mrow> | ||
<mn> Y </mn> | ||
<mo> *</mo> | ||
<mn> 100 </mn> | ||
</mrow> | ||
<mn>Nº Total</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> C% </mn> | ||
</math> | ||
</div> | ||
</div> | ||
</p> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,108 @@ | ||
--- | ||
capitulo: 4 | ||
indice: 4.2.2 | ||
order: 5 | ||
subcapitulo: true | ||
title: Análise de Valor Limite (BVA) | ||
--- | ||
|
||
<p> | ||
É baseada na execução dos limites de valor das partições de equivalência. Os valores mínimo e máximo de uma partição são seus valores de limite, onde os desenvolvedores tem maior probabilidade de cometer erros. Existe a BVA de 2 valores e a BVA de 3 valores. | ||
</p> | ||
|
||
<p> | ||
<span><b>BVA de 2 valores:</b></span> | ||
<ul> | ||
<li>Para cada valor limite há dois itens de cobertura, o valor limite e seu vizinho mais próximo pertencente a partição Adjacente (vizinha).</li> | ||
<li>Para atingir 100% de cobertura todos os valores limites identificados devem ser executados.</li> | ||
</ul> | ||
</p> | ||
|
||
<p>A cobertura é medida da seguinte forma e expressa em porcentagem, representada pela letra 'C': Número de Valores limites executados, dividido pelo número total de valor limite identificado, resultado representado pela letra 'Y'. </p> | ||
|
||
<p> | ||
<div class="d-flex flex-lg-row flex-md-row flex-sm-column justify-content-center"> | ||
<div class="p-1"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Nº Executados </mn> | ||
</mrow> | ||
<mn>Nº Total</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> Y </mn> | ||
</math> | ||
</div> | ||
<div class="p-1"> | ||
→ | ||
</div> | ||
<div class="p-1"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Y </mn> | ||
<mo> *</mo> | ||
<mn> 100 </mn> | ||
</mrow> | ||
<mn>Nº Total</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> C% </mn> | ||
</math> | ||
</div> | ||
</div> | ||
</p> | ||
|
||
<p> | ||
<span><b>BVA de 3 valores:</b></span> | ||
<ul> | ||
<li>Para cada valor limite há três itens de cobertura, o valor limite e seus dois vizinhos.</li> | ||
<li>Para atingir 100% de cobertura todos os valores limites e seus vizinhos devem ser executados.</li> | ||
</ul> | ||
</p> | ||
|
||
<p>A cobertura é medida da seguinte forma e expressa em porcentagem, representada pela letra 'C': Número de Valores limites executados mais seus vizinhos, dividido pelo número total de valor limite identificado mais seus vizinhos, resultado representado pela letra 'Y'. </p> | ||
|
||
<p> | ||
<div class="row justify-content-center"> | ||
<div class="col-lg-4 col-sm-12 text-center"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Nº Executados + vizinhos Executados</mn> | ||
</mrow> | ||
<mn>Nº Total + vizinhos Totais</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> Y </mn> | ||
</math> | ||
</div> | ||
<div class="col-lg-1 col-sm-12 text-center"> | ||
→ | ||
</div> | ||
<div class="col-lg-4 col-sm-12 text-center"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Y </mn> | ||
<mo> *</mo> | ||
<mn> 100 </mn> | ||
</mrow> | ||
<mn>Nº Total + vizinhos Totais</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> C% </mn> | ||
</math> | ||
</div> | ||
</div> | ||
</p> | ||
|
||
<p> | ||
O exemplo a seguir mostra como o BVA de 3 valores tem uma cobertura maior que o BVA de 2 valores, pois abrange não apenas seu vizinho adjacente da próxima partição, mas também seu vizinho da mesma partição: | ||
<br> | ||
<div class="text-center"> | ||
<!-- TODO corrigir /feroline.qa-bentevi/ para usar relative_url --> | ||
<img class="img-fluid" src="/feroline.qa-bentevi/assets/images/bva.png"> | ||
</div> | ||
</p> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
--- | ||
capitulo: 4 | ||
indice: 4.2.3 | ||
order: 6 | ||
subcapitulo: true | ||
title: Tabela de Decisão | ||
--- | ||
|
||
<p> | ||
É uma forma eficaz de registrar regras complexas como as Regras de Negócios. Nesta tabela são definidas condições e ações resultantes do sistema. Uma tabela completa cobre todas as combinações de condições, mas pode ser simplificada excluindo, fundindo condições inviáveis ou que não afetam o resultado. | ||
</p> | ||
|
||
<table class="table table-sm table-bordered"> | ||
<thead> | ||
<tr> | ||
<th scope="col"></th> | ||
<th scope="col">Ação 1</th> | ||
<th scope="col">Ação 2</th> | ||
</tr> | ||
</thead> | ||
<tbody> | ||
<tr class="flex-row"> | ||
<th scope="row">Condição 1</th> | ||
<td>Resultado 1.1</td> | ||
<td>Resultado 1.2</td> | ||
</tr> | ||
<tr> | ||
<th scope="row">Condição 2</th> | ||
<td>Resultado 2.1</td> | ||
<td>Resultado 2.2</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
|
||
<p> | ||
<b>Linha:</b> Condições e seus resultados de acordo com a ação, chamados de Ações Resultantes. | ||
<br> | ||
<b>Coluna:</b> Regra de decisão (combinação única de decisão) e Ações Associadas. | ||
</p> | ||
|
||
<p>Aqui serão tratados dois tipos de tabelas de decisão, são elas: | ||
<ul> | ||
<li><b>Entrada Limitada:</b> Todos os valores das Condições e Ações são mostrados como Verdadeiro e Falso (Booleano). Exceto os valores irrelevantes ou inviáveis. </li> | ||
<li><b>Entrada Estendida:</b> Alguns ou todos os valores das Condições e Ações podem apresentar valores múltiplos (ex.: intervalos).</li> | ||
</ul> | ||
</p> | ||
|
||
<p> | ||
As notações podem ser : | ||
<table class="table table-sm table-bordered"> | ||
<thead> | ||
<tr> | ||
<th scope="col">Notação</th> | ||
<th scope="col">Significado</th> | ||
</tr> | ||
</thead> | ||
<tbody> | ||
<tr class="flex-row"> | ||
<th scope="row text-align-center"> V </th> | ||
<td>Verdadeiro. A ação foi satisfeita.</td> | ||
</tr> | ||
<tr class="flex-row"> | ||
<th scope="row"> F </th> | ||
<td>Falso. A ação não foi satisfeita.</td> | ||
</tr> | ||
<tr class="flex-row"> | ||
<th scope="row"> — </th> | ||
<td>O valor da condição é irrelevante para o resultado.</td> | ||
</tr> | ||
<tr class="flex-row"> | ||
<th scope="row"> N/A </th> | ||
<td>Não Aplica. A condição é inviável para regra.</td> | ||
</tr> | ||
<tr class="flex-row"> | ||
<th scope="row"> X </th> | ||
<td>A ação deve ocorrer.</td> | ||
</tr> | ||
<tr class="flex-row"> | ||
<th scope="row"> </th> | ||
<td>Em branco. A ação não deve ocorrer.</td> | ||
</tr> | ||
</tbody> | ||
</table> | ||
</p> | ||
|
||
<p>A cobertura é feita nas colunas que tem combinações viáveis. Para atingir 100%, todas as colunas devem ser executadas, sendo medida da seguinte forma: O Número total de colunas executadas é dividido pelo total de colunas viáveis, sendo o resultado representado pela letra 'Y', e então espresso na forma de porcentagem, representado pela letra 'C'.</p> | ||
|
||
<p> | ||
<div class="d-flex flex-lg-row flex-md-row flex-sm-column justify-content-center"> | ||
<div class="p-1"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Nº Executados </mn> | ||
</mrow> | ||
<mn>Nº Total Viável</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> Y </mn> | ||
</math> | ||
</div> | ||
<div class="p-1"> | ||
→ | ||
</div> | ||
<div class="p-1"> | ||
<math> | ||
<mfrac> | ||
<mrow> | ||
<mn> Y </mn> | ||
<mo> *</mo> | ||
<mn> 100 </mn> | ||
</mrow> | ||
<mn>Nº Total Viável</mn> | ||
</mfrac> | ||
<mo> = </mo> | ||
<mn> C% </mn> | ||
</math> | ||
</div> | ||
</div> | ||
</p> |
Oops, something went wrong.