Schnellstart mit Google Test - Infopulse
image of banner
Zurück

Schnellstart mit Google Test

Google Test ist ein Framework von Google für Modultests des C++-Codes. Die gesamte Architektur ähnelt etwas den konventionellen boost::test und CppUnit, wobei die Details ziemlich unterschiedlich ausfallen (zum jeweiligen Vorteil, wie ich glaube). Ich werde kurz das Hallo-Welt-Programm bei Google Test beschreiben und dabei auf einige potenzielle Probleme hinweisen, denen Sie begegnen können, während Sie Google Test bei der Entwicklung für Visual Studio verwenden.

Kompilierung

  • Laden Sie das Archiv mit dem Code herunter und dekomprimieren Sie es.
  • Es gibt zwei Dateien gtest.sln und gtest-md.sln im Ordner guest -1.6.0/msvc. Es handelt sich hierbei um Solution-Dateien von Visual Studio. Sie unterscheiden sich in den Kompilierungsoptionen: gtest.sln erstellt einen Code mit /MT und gtest-md.sln mit /MD. Wenn Sie nicht wissen, was wofür verwendet wird, können Sie zum Beispiel hier oder hier nachlesen. Sie sollten die gleiche Variante kompilieren, wie im Projekt, das Sie testen wollen. Es ist wichtig, damit Sie keine vielen sonderbaren Verknüpfungsfehler haben. Sie können die Einstellungen, die für Ihr Projekt verwendet werden, hier überprüfen:

Schnellstart mit Google Test - Infopulse - 558305

Google-Test-Code kann mit Visual Studio 2008/2010 erfolgreich kompiliert werden (ich habe keine anderen Versionen ausprobiert). Am Ende erhalten Sie die Dateien gtestd.lib\gtest.lib (für die Debug- und Release-Konfigurationen). Das ist auch schon die ganze Kompilierung.

Hallo Welt

  • Öffnen Sie die Solution-Dateien, die Sie testen werden. Erstellen Sie ein neues Projekt (C++-Konsolenanwendung).
  • Erstellen Sie in diesem Projekt eine Abhängigkeit von den Bibliotheken, die im zweiten Schritt (gtestd.lib\gtest.lib) kompiliert wurden, den Pfad zum Include-Ordner bei Google Test, Abhängigkeiten für die Projekte in Ihner Lösung, die Sie testen warden..Schnellstart mit Google Test - Infopulse - 334896Schnellstart mit Google Test - Infopulse - 907066
  • Schreiben Sie den folgenden Code in der Hauptdatei des Testprojekts:
  • Starten Sie das Testprojekt. Beachten Sie bitte Folgendes:

    Schnellstart mit Google Test - Infopulse - 079857

Nummer 1

Irren Sie sich nicht bei der Auswahl der Solution-Datei im zweiten Schritt. Wenn Sie einen Fehler machen und es vergessen, dann wird es praktisch unmöglich sein, den Fehler zu finden.

Nummer 2

Wenn Sie den Plan verfolgen, die Haupttestanwendung in verschiedenen Projekten zu platzieren, werden Sie mit einem heiklen Nebeneffekt konfrontiert. Der Punkt ist, dass die Google-Modultests praktisch Kompilierzeitklassen sind, und der Visual-C++-Compiler mit einem internen Bug wird diese Klassen im Laufe der Kompilierung einfach ausschließen. Um den Fehler zu vermeiden, verwenden Sie die hier beschriebene Methode.

Nummer 3

Denken Sie daran, die Kompilierklassenbibliotheken nicht nur zu den Abhängigkeiten des zu testenden Projekts hinzuzufügen, sondern auch zu den Referenzen, sonst wird es Verknüpfungsfehler geben.

Weitere Referenzen

FAQ
Framework für Fortgeschrittene
Teststart-Plug-in für Visual Studio

Weitere Artikel

Wir haben eine Lösung für Ihre Anforderungen. Senden Sie uns einfach eine Nachricht, und unsere Experten werden sich so schnell wie möglich mit Ihnen in Verbindung setzen.

Vielen Dank!

Wir haben Ihre Anfrage erhalten und werden Sie in Kürze kontaktieren.