Integracja testów jednostkowych z aplikacją

0

Witam,

rozpoczynam właśnie większy projekt i zastanawiam się jak zrobić, a testy jednostkowe, które chcę pisać, były 'zintegrowane' z projektem. Otóż podczas normalnego uruchamiania aplikacji nie potrzebne jest, aby była linkowana biblioteka do testów, oraz plik main.cpp powinien wyglądać inaczej - nie uruchamiać apki, lecz tylko testy. Nie chcę tworzyć nowego projektu, w którym będę jeszcze raz dodawać klasy.

Pomyślałem sobie, że można by było to zrobić za pomocą pliku makefile. Chodzi o to, że gdy wpiszę w konsolę make, to zostanie skompilowany plik main.cpp bez linkowania libów do testów. Natomiast gdy wpisze się make tests, to skompiluje mi zamiast main.cpp plik main_tests.cpp w którym będą już moje testy.

I to wiem jak zrobić - w miarę proste :)
Jednak jestem ciekaw, czy można to zrobić jakoś inaczej, np z poziomu IDE (korzystam QtCreator). Chodzi o to, aby obok profilu Debug/Release dodać jeszcze jeden Tests, który będzie robić to, co wspomniałem wyżej, ale bez użycia konsoli z mojej strony. Można zrobić takie cuś? Jak wy rozwiązujecie ten problem?

0

Unit testy to powinna być osobna aplikacja - jedna lub więcej. Może być tak jak napisałeś - różne "main.cpp" dla różnego celu, ale EXEc powinien na końcu mieć inną nazwę, w zależności od przeznaczenia.

Make'a można zrobić tak jak napisałeś - "make tests" które odpali kompilację testów i je uruchomi, najlepiej batchowo (wynik do pliku, kontrola kodu błędu).

1 użytkowników online, w tym zalogowanych: 0, gości: 1