traductor traducir significa qué para inglés ingles gratis español escribir cómo como buscar java refactoring mocking partial-mocks

java - traducir - Burla parcial como el olor del código?



traductor en ingles y español para escribir (1)

¿Por qué hay tanto odio sobre ''burlas parciales'' y el código que lo requiere?

Aquí hay una implementación de ejemplo (teórica):

public ComplexResult1 operationA(Stimulus a) { { ... result = ...; } auditTheChange(a); } public ComplexResult2 operationB(Stimulus b) { { ... result = ...; } auditTheChange(b); return result; } void auditTheChange(Stimulus stim) { // do a bunch of stuff to record the change // and interact with another outside service }

Ahora, a mi entender, este es un código bien refactorizado.

Si quiero UNIT probar operationA y operationB, y asegurarme de que la auditoría ocurre en cada escenario, pero sin tener que probar los detalles del código de auditoría, usaría burlas parciales.

¿Qué no estoy viendo / entendiendo que causa tantos proyectos (EasyMock, Mockito, etc.) para recomendar la refactorización?


Si la auditoría es realmente una función interna de la clase, entonces el código debe probarse como parte de la prueba de la unidad. ¿Por qué su clase maneja operaciones complejas y auditoría? ¿Se podría mover la auditoría a una clase separada?

Si es así, presente la auditoría como colaborador con esta clase y protéjala. Si no, prueba la unidad.

Puedes usar simulaciones parciales, pero en este caso creo que es una indicación de que la clase está haciendo demasiado.