Definição – O que significa Fuzz Testing?
O teste fuzz descreve os processos de teste do sistema que envolvem uma abordagem aleatória ou distribuída. Os profissionais de TI costumam usar o termo para falar sobre os esforços para testar os aplicativos de teste, alimentando-os com dados aleatórios, a fim de detectar quaisquer erros ou travamentos que possam ocorrer. A ideia por trás do teste fuzz é que os aplicativos e sistemas de software podem ter muitos bugs ou falhas diferentes relacionados à entrada de dados.
Definirtec explica Fuzz Testing
Por exemplo, o teste de difusão pode incluir a entrada de diferentes tipos de inteiros, cadeias de caracteres, flutuações e outras variáveis que, se não inseridas corretamente, podem fazer com que o aplicativo de software trave ou trave. Um exemplo comum é um campo inteiro que se destina a acomodar alguns números específicos, como um a cinco, mas onde um usuário pode inserir qualquer número inteiro devido à configuração genérica do campo de entrada ou controle. Inserir um valor alto pode causar um erro ou travar. No teste fuzz, os desenvolvedores experimentam inserir muitos tipos diferentes de respostas aleatórias e, em seguida, documentam quaisquer bugs que ocorram. Em alguns casos, os desenvolvedores podem usar uma ferramenta chamada fuzzer para injetar dados aleatórios.
A ideia de teste fuzz é frequentemente atribuída ao professor Barton Miller da Universidade de Wisconsin e seu trabalho em 1989. Outra maneira de entender o teste fuzz é que, de certa forma, o termo corresponde ao termo mais geral lógica fuzzy, um tipo de raciocínio que sugere que os processos distribuídos podem ajudar os observadores a detectar uma tendência mais ampla em dados ou sistemas. Alguns profissionais de TI também falam sobre testes de segurança fuzz, em que os testadores podem experimentar diferentes tipos de hacks para identificar brechas de segurança.