A postura do desenvolvedor para criar casos de teste úteis
(meetup.toast.com)Os testes são um elemento indispensável no desenvolvimento moderno de software, mas os casos de teste também são, no fim das contas, código escrito por desenvolvedores, então às vezes podem causar problemas. Apresentamos um texto que analisa o que são casos de teste “úteis” sob uma perspectiva orientada a objetos. (Coreano)
O ponto principal é que o teste é [um módulo com a responsabilidade de testar outro módulo encapsulado]. Isso significa que o teste também é, sem dúvida, parte do código em desenvolvimento e, portanto, deve seguir os princípios da orientação a objetos e ser continuamente melhorado e refatorado. Sendo assim, também é possível deduzir, a partir dos princípios SOLID, que os casos de teste não devem acessar nem depender de elementos internos concretos do módulo testado, como métodos private. Como o que o caso de teste deve verificar é, em última instância, a responsabilidade abstrata daquele módulo, o teste deve ser realizado apenas por meio da interface externa que reflita essa responsabilidade.
Pessoalmente, acho que esse é um dos vários obstáculos que iniciantes em programação precisam superar. Quando eu estava aprendendo orientação a objetos pela primeira vez, ouvi em uma aula que “não se deve testar métodos private diretamente” e também a explicação do porquê, mas, sinceramente, naquela época eu não entendi direito. Só fui compreender esse ponto em alguma medida muito tempo depois.
Ainda não há comentários.