Soy pionero en los esfuerzos de pruebas unitarias en mi empresa, y necesito elegir un marco de burla para usar. Nunca he usado un marco de burla antes. Ya hemos elegido Google Test, por lo que usar Google Mock sería bueno. Sin embargo, mis impresiones iniciales después de mirar Google Mock's tutorial son:¿Es Google Mock un buen marco de burla?
- La necesidad de volver a declarar cada método en la clase de burla con una macro MOCK_METHODn parece innecesario y parece ir en contra del principio DRY.
- Sus matchers (por ejemplo, el '_' en EXPECT_CALL (tortuga, Reenviar (_));) y el orden de coincidencia parecen casi demasiado potentes. Al igual, sería fácil decir algo que no quieres decir, y extrañar errores de esa manera.
Tengo una gran confianza en los desarrolladores de Google, y poca confianza en mi propia capacidad para juzgar marcos burlones, nunca antes los había usado. Entonces mi pregunta es: ¿Son estas preocupaciones válidas?
¿O no hay una mejor manera de definir un objeto simulado, y los matchers son intuitivos en la práctica? Agradecería las respuestas de cualquier persona que haya usado Google Mock anteriormente, y las comparaciones con otros marcos C++ serían útiles.
Para la parte "redeclar", tenga en cuenta que 'gmock_gen.py' por lo general puede escribir el simulacro para usted (dado el archivo de encabezado y la clase base como entrada). Dado que C++ es complejo, puede que se estropee, pero seguirá cubriendo la mayoría de las cajas de uso, por lo que acelera las cosas. –
Gracias. Lamentablemente, dudo que la gente aquí lo use. Podría intentar, sin embargo. – des4maisons