So habe ich NetBeans 8.1 läuft auf Ubuntu 14.04. Ich habe ein bestehendes Projekt mit CMakeLists Dateien sowie googletest. Ich versuche es einzurichten und runnig. So installierte ich die NBCndUnit und folgte dann den hier gefundenen Anweisungen: https://github.com/offa/NBCndUnit/wiki/Using-existing-projects#a-workaround-for-cmake. hier ist ein Teil meines Projekts/CMakeLists Datei:netbeans C++ googletest führen Tests von gui
cmake_policy(SET CMP0037 OLD)
add_custom_target(build-tests COMMENT "starting build-tests target")
add_custom_target(test myAppTest COMMENT "starting test target")
und hier ist der Teil meiner myApp/Test CMakeLists Datei:
add_executable(myAppTest ${SOURCES} ${HEADERS})
target_link_libraries(myAppTest
-L${GTEST_LIBRARY_DIR}
-L${GMOCK_LIBRARY_DIR}
myApp
gtest
gmock
# other dependencies
)
add_test(myAppTest myAppTest)
wenn ich auf rechts auf der Haupt CMakeLists.txt Datei Projekt und wählen "make makefile" - es gelingt. Als ich dann rechts auf dem Makefile klicken und gehen Ziel Untermenü zu machen, kann ich mehrere Ziele wählen:
- alle
- sauber
- Hilfe
- Build-Tests
- Test
Wenn ich dann zB wähle. "Build-Tests" target - nichts passiert (was zu erwarten ist, wie dieses Ziel leer ist):
cd '(some project path)/cmake_build'
/usr/bin/make -f Makefile build-tests
Built target build-tests
Wenn ich wähle "test" Ziel - es wird gebaut und ausgeführt (Ausgabe im Konsolenfenster)
cd '(path to project)/cmake_build'
/usr/bin/make -f Makefile test
[ 34%] Built target dependency1
[ 54%] Built target dependency2
[ 82%] Built target dependency3
[ 88%] Built target dependency4
[ 97%] Built target dependency5
[100%] starting test target
[==========] Running 111 tests from 7 test cases.
[----------] Global test environment set-up.
[----------] 1 test from Foo
[ RUN ] Foo.Bar
[ OK ] Foo.Bar (0 ms)
[----------] 1 test from Foo (0 ms total)
(rest of gtest output)
Aber ich möchte die Testergebnisse in Netbeans TestResults Fenster sehen. Ich gehe also zum Menü 'Ausführen' -> 'Testprojekt'. Und hier erscheint ein Problem: Im Ausgabebereich wird eine neue Registerkarte mit dem Titel myApp (Build, Build Tests ...) hinzugefügt. Und er versucht, das ganze Projekt zu bauen:
cd '(project path)/cmake_build'
/usr/bin/make -j4 -f Makefile
das Problem ist, dass das gesamte Projekt noch nicht baubar ist, aufgrund Abhängigkeiten. Alles, was notwendig ist, wird im myAppTest gespottet (und der Test selbst ist lauffähig - z. B. durch Erstellen des "Test" -Ziels aus dem Makefile-Kontextmenü). Die eigentliche Frage ist also: Kann ich irgendwie das ganze Projekt überspringen, bevor ich die eigentlichen Tests mache?