Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Estou com dúvida no curso de Testes de Unidade e TDD, no exercício 80 do capítulo Testando o que realmente é necessário.

Em minha resposta eu inseri um comportamento em FiltroDeLances para retornar os itens filtrados em ordem crescente, isso com o objetivo de facilitar um dos testes que elaborei. Essa alteração no comportamento da classe FiltroDeLances para facilitar o teste pode ser considerada útil ou não deveria ser realizada em hipótese alguma?

2 respostas
solução!

Se o teste que você criou é algo complementar aos testes existentes que já capturam os erros, acredito que não seja necessário, mas se o teste que você criou for algo que capture um novo possivel erro, acho fundamental manter.

Penso que a ordem dos elementos da coleção retornada seja irrelevante, do ponto de vista do teste em questão, porque não me parece estarmos testando em qual ordem os elementos retornam mas sim se os elementos retornados são de fato os elementos esperados, corretos, estejam eles em ordem crescente, decrescente ou aleatória.Se a ordem dos elementos corretos retornados pelo filtro implicasse em quebrar algum teste então isso revelaria que o teste quebrado foi projetado HARD-ORDERED -ORIENTED e não necessariamente que o teste esteja errado, já que os elementos retornados são exatamente os corretos porém numa ordem em que o teste não os contempla. Quanto á UTILIDADE da ordem dos resultados isso DEPENDE ... Por exemplo, imaginemos um cenário onde a quantidade de elementos da coleção retornada é relativamente grande, por exemplo 1.000.000.000 de elementos, e que além disso se deseja fazer alguma busca nesse conjunto então é extremamente útil retorná-los ordenados pois isso facilitaria a BUSCA BINÁRIA nesse conjunto.