Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 01/12/2007, à 13:09

guiguivts

[C++] test unitaire avec boost

Salut.

J'essaye de faire des tests unitaires en c++ avec boost.

J'ai installé la libraire et lancé un premier test :

#include <boost/test/unit_test.hpp>

int main(){
	BOOST_CHECK(0==0);
}

Je compile de cette façon g++ -c Main.cpp

Puis si je fais : g++ Main.o j'obtient :

Main.o: In function `main':
Main.cpp:(.text+0xc6): undefined reference to `boost::test_tools::tt_detail::check_impl(boost::test_tools::predicate_result const&, boost::basic_wrap_stringstream<char>&, boost::unit_test::basic_cstring<char const>, unsigned int, boost::test_tools::tt_detail::tool_level, boost::test_tools::tt_detail::check_type, unsigned int, ...)'
collect2: ld a retourné 1 code d'état d'exécution

Et si j'utilise : g++ Main.o -lboost_unit_test_framework j'obtient :

/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../lib/libboost_unit_test_framework.so: undefined reference to `init_unit_test_suite(int, char**)'
collect2: ld a retourné 1 code d'état d'exécution

Comment faire ?

Merci smile

Hors ligne

#2 Le 01/12/2007, à 16:37

slapierre

Re : [C++] test unitaire avec boost

> http://www.koders.com/cpp/fid00BCCF3D058789F10961B1B6A6666FFF87102BE2.aspx
> http://www-eleves-isia.cma.fr/documentation/BoostDoc/boost_1_29_0/libs/test/doc/getting_started.htm

1. Tu dois déclarer le namespace
2. La fonction main est remplacée par init_unit_test_suite


"Le spectre de la folie nous empêchera-t-il de hisser l'étendard de l'imagination?" - André Breton

Hors ligne

#3 Le 01/12/2007, à 19:36

guiguivts

Re : [C++] test unitaire avec boost

Super tes liens merci bcp !

J'ai pourtant cherché mais je les ai pas trouvé ceux la.. Et le coup de remplacer la fonction main pas trouvé non plus !

ça marche nickel thanks wink

bye

Hors ligne