2013-02-15 10 views
5

Próbuję przeprowadzić trochę losowych testów w oprogramowaniu, które opracowuję.
Mam urządzenie inicjowane losowymi wartościami, dlatego każdy test będzie miał inne wejście.Wywołanie kilkukrotnego pojedynczego testu - Google Testy

Co więcej, chcę uruchomić jeden z tych testów kilka razy (oczekuję, że urządzenie zostanie zainicjowane losowo dla każdego wykonania), czy jest to możliwe w testach Google? Potrzebuję tego w kodzie, żeby nie używać argumentu czy czegoś podobnego.

Szukam czegoś takiego jak invocationCount w JUnit.

+0

HTH: http://code.google.com/p/googletest/wiki/V1_6_AdvancedGuide#Value_Parameterized_Tests – PiotrNycz

+0

@PiotrNycz: dzięki, myślę, że to może być osiągalne przez „wartość-parametryzowane Tests” Ale musiałbym stworzyć szczególne urządzenie do testu, które chcę powtórzyć. Czy tak nie jest? Czy nie wydaje się to dość skomplikowane, aby powtórzyć test? –

+1

Nie mam tak dużego doświadczenia w GT, aby odpowiedzieć na twoje pytanie. Zgadzam się, wydaje się to skomplikowane - może możesz zapytać google bezpośrednio? – PiotrNycz

Odpowiedz

6

Jak o czymś takim, stosując nieużywany parametr i zasięg()

class Fixture : public ::testing::TestWithParam<int> { 
    //Random initialisation 
}; 

TEST_P(Fix, Test1){} 

INSTANTIATE_TEST_CASE_P(Instantiation, Fixture, ::testing::Range(1, 10)); 

Test1 wil nazwać 10 razy, z nowym urządzeniu tworzone za każdym razem.

+0

o tym właśnie rozmawiałem z @PiotrNycza na temat komentarzy i wydaje się, że jest to jedyne dostępne rozwiązanie. dzięki –

Powiązane problemy