📎 Webclip
More Testing Tips With C#
The post gathers a few C# testing tips around test data, reference outputs, and integration-test setup. It says test data generators help when hand-written data gets tedious, seeds make randomized tests reproducible, and reference files work well for stable rendering output.
It also shows how to find a free TCP port with Socket, and notes that the whole 127.0.0.0/8 loopback range can be used when a fixed port is required. ## Fichamento
- Em testes, geradores de dados ajudam quando criar exemplos à mão fica trabalhoso e os dados acabam pouco realistas.
- O texto apresenta o
Fakercomo uma opção que produz dados em inglês e mais “humanos”, sem foco em casos-limite. - O
Bogus.NETé mostrado como uma biblioteca mais ampla, com fábricas de objetos de teste, suporte a vários locais e conjuntos de dados adicionais. - Ao usar dados aleatórios em testes, o texto recomenda controlar a seed para poder reproduzir uma falha com o mesmo conjunto de dados.
- A seed pode ser definida globalmente no
Bogus.Randomizer.Seedou por instância comUseSeed. - Esse estilo de teste é descrito como uma forma simples de property-based testing, porque gera dados aleatórios e verifica se uma propriedade do sistema se mantém.
- Outra técnica é guardar uma referência boa do resultado e comparar com a saída atual, o que funciona bem para código de renderização como HTML, imagens ou SVG.
- Quando o teste falha nesse modelo, o texto sugere inspecionar as diferenças e, se a mudança for esperada, copiar os arquivos de
currentparareferencee commitar. - Para testes de integração, o texto mostra como descobrir uma porta TCP livre usando
Socketcom bind em127.0.0.1:0. - Se uma porta fixa for exigida, o texto diz que o intervalo
127.0.0.0/8pertence à máquina local e permite usar muitos IPs de loopback, como127.0.0.2e127.0.0.3, na mesma porta.
