Pedido de referência: Aplicação de modelos de blocos a testes de software

8

Comecei a examinar estruturas de incidência e projetos combinatórios (motivação possível: limitar algumas estruturas na automontagem generalizada), e o artigo da Wikipedia faz a seguinte declaração interessante, mas inexplicável: projetos de blocos têm aplicação no teste de software. (A página da Wikipedia com a reivindicação está aqui ).

Meu google-fu não pega uma boa referência para este aplicativo. Alguém pode me dar uma pista?

Aaron Sterling
fonte

Respostas:

8

Suponha que você tenha algum software que inclua uma lista de n variáveis ​​s 1 , s 2 , ..., s n e suponha que cada uma dessas variáveis ​​possa assumir um intervalo de valores. Agora suponha que você queira testar o programa para interações de 2 vias, ou seja, você quer testar o programa é executado corretamente para cada par de variáveis s i e s j e cada valor possível que estas variáveis podem tomar.

Para fazer isso por uma de força bruta - processando cada par i e j um-por-um, em seguida, testando cada valor permitido de s i e s j (ao escolher os outros arbitrariamente) - exigiria testar um grande número de casos.

Porém, podemos testar várias interações bidirecionais em um único teste. Por exemplo, se tivermos três variáveis ​​s 1 , s 2 e s 3 e testamos quando s 1 = 1, s 2 = 2 e s 3 = 0, testamos três possíveis interações bidirecionais simultaneamente.

Podemos projetar um conjunto de testes para o programa com base em uma matriz de cobertura - as colunas representam as variáveis ​​e as linhas representam o teste específico a ser executado (para que menos linhas sejam melhores). Em uma matriz cobrindo força 2, no interior de quaisquer duas colunas I e J, existe cada par possível das variáveis s i e s j . Existem matrizes de cobertura de força mais alta que podem testar interações no modo t (mas geralmente as interações são o resultado de apenas alguns componentes).

Conjuntos de quadrados latinos mutuamente ortogonais (e vários outros desenhos de blocos) formam matrizes de cobertura particularmente eficientes.

Douglas S. Stones
fonte