Teste aleatório

Definição - o que significa teste aleatório?

O teste aleatório refere-se à prática de usar entradas aleatórias para testar o software. Diferentes tipos de teste aleatório contam com a mesma ideia básica, que é a de que os casos de implementação de teste são escolhidos aleatoriamente.

Definirtec explica o teste aleatório

O teste aleatório é um tipo de teste de caixa preta no qual os desenvolvedores não estão olhando para o código interno de um produto de software - em vez disso, eles estão inserindo entradas aleatórias no sistema para ver quais são os resultados. Um exemplo comum é o uso de inteiros aleatórios para testar uma função de software que retorna resultados com base nesses inteiros. Essas funções podem incluir "for loops" ou outros algoritmos para entregar um resultado, onde um conjunto de casos de teste aleatórios simula ou se aproxima de um conjunto mais amplo de casos inseridos por usuários teóricos.

Outros tipos de teste aleatório podem envolver o uso de heurísticas, que orientam o uso de entradas aleatórias. Em geral, e especificamente ao lidar com inteiros ou outros tipos de variáveis, o teste aleatório é tão aleatório quanto o conjunto de entradas aleatórias que são usadas - em outras palavras, os testadores costumam escolher usar um conjunto limitado de inteiros, em vez de um infinito conjunto. Práticas específicas para teste aleatório entram na mecânica do que queremos dizer com aleatório e como os desenvolvedores chegam a um conjunto aparentemente aleatório de entradas para um teste.

As discussões sobre testes aleatórios também podem girar em torno da eficiência de seu uso. Uma ideia é que, como o teste aleatório pode ser feito por sistemas automatizados em vez de profissionais humanos, ele pode ter vantagens sobre o teste direcionado. No entanto, o teste direcionado pode ser mais eficiente em termos de quantos testes são necessários. Alguns desenvolvedores e especialistas também usam o termo "teste aleatório" para se referir a testes ineficientes ou mesmo incompetentes, em que o teste direcionado é visto como um método superior.