🇧🇷 Builder Pattern e Testes de Unidade

Arley Pádua
2 min readNov 18, 2017

Ao escrever um software, você como um desenvolvedor, deve ter maneiras de garantir a qualidade do seu código. Ao lidarmos com desenvolvimento orientado a testes, é uma boa prática ter seus testes de unidade bem implementados e legíveis, afinal, esse é o ponto de partida do seu desenvolvimento. No futuro, assim que o software evolui, você terá que olhar para os seus testes novamente, entendê-los e modificá-los.

É muito comum fazer um esforço adicional para escrever seus testes de uma maneira legível. Seguindo esse esforço, com a sugestão do Steve Smith, implementei o design pattern “Builder” aplicado aos testes de unidade para ver como ficaria o resultado. Com a combinação de: Framework de Testes de Unidade da Microsoft, C#, FluentAssertions framework e o design pattern “builder”, podemos ter um teste de fácil leitura em um cenário simples. Veja abaixo os resultados.

Primeiro, uma simples classe Employee foi criada com as propriedades: name, birth date e gross salary (salário bruto). Também foi adicionado um comportamento para calcular o salário líquido (CalculateNetSalary).

Depois vem a criação do builder pattern para a classe Employee:

Finalmente é possível escrever os testes combinando a sequência de métodos do builder em uma maneira fluente e de fácil leitura.

Com isso, você terá um teste legível sem muito esforço adicional.

Para ver o cĂłdigo completo veja esse repositĂłrio.

Esse artigo também está disponível em Inglês.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Arley Pádua
Arley Pádua

Written by Arley Pádua

Software Engineer and passionate about distributed systems

No responses yet

Write a response