2010-09-21 8 views
26

Bazı test testlerini Google test çerçevesiyle programlıyorum. Fakat bazı önermelerin iyi yerleştirilmiş olup olmadığını kontrol etmek istiyorum. Google testinde bir ipucu yakalamanın bir yolu var mı?Google testi ile bir iddia nasıl ele geçirilir?

Örnek test altındaki kodu:

int factorial(int n){ 
    assert(n >= 0); 
    //.... 
} 

Sonra testi:

#include <gtest/gtest.h> 
TEST(FactorialTest,assertNegative){ 
    EXPECT_ANY_THROW({ 
     factorial(-1); 
    }); 
} 

Ama EXPECT_ANY_THROW assert ama sadece özel durumları yakalamak etmez. Tahminleri yakalamak için bir çözüm arıyorum.

cevap

22

Google test, ASSERT_DEATH, EXPECT_DEATH and other related macros sağlar.

Bu soru ve What are Google Test, Death Tests birbirlerinin cevaplarıdır. Bu onları çoğaltıyor mu, değil mi? ;-)

+0

Teşekkürler. Tek ihtiyacım olan şey. Soruyu nasıl kapatabilirim? – Killrazor

+2

@Killrazor: Eğer bir dupe olduğunu düşünüyorsanız, o zaman bir soru kapatmak için, her biri bu izni almak için yeterli sayıda temsilcisi olan 5 kişiyi kapatarak oylamaya oy verebilirsiniz. Ama bunun için endişelenmeyeceğim - bu soru, "son", "aktif" ve "sıcak" soru listelerinden çoktan yok olsaydı, zaten yok, bu yüzden kimsenin içinde değil. Farklı terimler kullanması ve dolayısıyla farklı Google aramalarında görünmesi yararlı olabilir. –

+0

Yinelenen cevaplar gerekli değildir çift soruları oluşturmaktadır. Ancak, cevabınız esas olarak sadece bir bağlantıdır - cesaret kırılmıştır. –

İlgili konular