Marcos de trabajos para pruebas unitarias en C++

Hola Comunidad,

Este es el primer post del mes de Agosto 2010 y debo decir “Este año se ha ido volando”, he estado bastante ocupado en la ciudad de Melbourne. Hace unos días atrás mi amigo y colega Simon Waight me envío un correo sobre un marco de trabajo para pruebas unitarias llamado Isolator++ el cual me pareció muy interesante, a continuación un fragmento de código que muestra como usarlo

   1: int Product::GetPrice(PricingManager* manager)

   2: {

   3:       if (manager->isOnSale())

   4:             return 5;

   5:       else

   6:             return 10;

   7: }

   8:  

   9:  

  10: bool PricingManager::isOnSale()

  11: {

  12:      return false;

  13: }

  14:  

  15:  

  16: TEST_F(IsolatorTests, GetPrice_OnSaleIsFalse_ExpectHighPrice)

  17: {

  18:      Product product;

  19:      PricingManager* manager =  new PricingManager();

  20:      ASSERT_EQ(10, product.GetPrice(manager));

  21: }

  22:  

  23:  

  24: TEST_F(IsolatorTests, GetPrice_OnSaleIsTrue_ExpectLowPrice)

  25: {

  26:       Product product;

  27:       PricingManager* fakeManager = FAKE(PricingManager);

  28:       WHEN_CALLED(fakeManager->isOnSale()).Return(true);

  29:       ASSERT_EQ(5, product.GetPrice(fakeManager));

  30: }

Al mismo tiempo conseguí esta tabla que contiene información de algunos marcos de trabajo disponibles para pruebas unitarias con C++

Saludos,

Angel

Leave a Reply

Your email address will not be published. Required fields are marked *