C++/Qt TestSuite



  • Hallo,

    ich hab ein Projekt, das man in mehrere Teilbereiche aufteilen kann.
    Also hab ich mir gedacht, dass ich für jedes dieser Subprojekte ein eigenes Directory mache und dort eine static Library (*.a) erzeuge.
    Um test-driven zu entwickeln hab ich nun in jedem dieser Projektverzeichnisse ein "Test" Directory erstellt. Dort erstelle ich Testcases für das jeweilige Projekt und erzeuge ebenfalls eine static Library.

    Nun hab ich übergeordnet ein "TestSuite" Directory erstellt und erzeuge dort ein Binary, das die Tests starten soll.
    Die ganzen Tests mach ich mit QT Unterstützung - da ich ohnehin QT verwenden will:

    QTest::qExec(&TestKlasse, argc, argv);
    

    Warum muss ich aber beim zusammenlinken des Binaries auch Dependency Libararies der Subprojekte angeben?
    also zB:
    SubprojektA hat noch zwei (static) libaries (in Unterverzeichnissen) und in der TestLib des Subprojekts wird dagegen gelinkt. Dennoch muss ich beim "großen" TestSuite Binary diese auch angeben...

    Kann mir das jmd. erklären, bzw. sagen, wie man sowas besser löst?
    danke im Voraus!


Log in to reply