1
resposta

Bibliotecas Python para gerar massas de teste

Bom dia! Eu gostaria de saber se há alguma biblioteca Python que gere dados randômicos sem duplicidade. Para o projeto que estou desenvolvendo, preciso gerar vários documentos randômicos (CPF, CNPJ) e eles não podem ser repetidos

Estou utilizando a biblioteca Faker, mas não tenho certeza se ela garante a unicidade dos dados. Também pesquisei sobre as bibliotecas ForDev e validate-docbr, mas não encontrei aquilo que precisava

1 resposta

Oi, Manuela! Tudo bem?

Desculpa a demora por um retorno.

A biblioteca Faker é uma escolha popular e útil para gerar dados randômicos sem duplicidade. Entretanto, a Faker em si não garante a unicidade dos dados, pois sua principal função é gerar dados fictícios realistas.

Dessa forma, para evitar a duplicação, gerando dados únicos, podemos recorrer a função "unique" da Faker, como podemos conferir na documentação: Unique Values.

Por exemplo, para gerar CPFs únicos, podemos fazer algo assim:

from faker import Faker

fake = Faker()

cpf = fake.unique.random_number(digits=11)

Entretanto, é válido informar que ao executar o código múltiplas vezes, em diferentes momentos, pode haver chances de duplicação de números, porque a garantia de unicidade não é estendida além da execução atual. Portanto, se precisarmos garantir unicidade em várias execuções do programa ou se a garantia de unicidade é absolutamente crucial, devemos considerar abordagens como a geração baseada em hash ou o uso de UUIDs.

Deixo como indicação também a biblioteca "Faker_BR", que é uma extensão da Faker específica para o Brasil e pode gerar CPFs e CNPJs válidos e únicos.

Espero ter ajudado. Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓