CppUnit

CppUnit
CppUnit
Aktuelle Version 1.12.1
(19. Februar 2008)
Betriebssystem Plattformübergreifend
Kategorie Unit-Test
Lizenz GNU Lesser General Public License
Deutschsprachig nein
cppunit.sf.net

CppUnit ist ein Unit-Test-Framework für die Programmiersprache C++. Es ist dem Java-Tool JUnit nachempfunden.

CppUnit testet Programmeinheiten (meistens Klassen). Zur Erstellung eines neuen Tests wird eine neue Klasse erstellt, die mit CppUnit-Makros erweitert wird. Die Methoden der Klasse werden als Test registriert. Innerhalb der Methoden können nun Methoden anderer Klassen getestet werden. Dabei testet man üblicherweise, ob eine konkrete Eingabe eine richtige Ausgabe produziert. Die Ergebnisse der Tests können maschinenlesbar in XML, als Textausgabe oder mit den mitgelieferten GUI-basierten Programmen angezeigt werden.

Inhaltsverzeichnis

Features

CppUnit hat folgende Eigenschaften:[1]

  • XML-Ausgabe mit Elementen für zusätzliche Angaben
  • Compiler-ähnliche Text-Ausgabe für die Integration in IDEs
  • Makros für die einfache Erstellung von Test-Suites
  • Unterstützung von hierarchischen Tests (Tests, die aus einfacheren Tests zusammengesetzt werden)
  • Test-Registrierung zur schnelleren Codegenerierung
  • Test-Plug-In für schnellere Compile/Test-Zyklen (selbsttestfähige dynamische Bibliothek)
  • Schutzmechanismus zur Kapselung der Testausführung, ermöglicht das Abfangen von Ausnahmen, die nicht von der Standard-Ausnahme (std::exception) abgeleitet sind.
  • MfcTestRunner, ein auf den Microsoft Foundation Classes (MFC) basierender Test-Runner
  • QtTestRunner, ein auf Qt 4 basierender grafischer Test-Runner
  • CursesTestRunner, ein auf Curses basierender Test-Runner
  • WxWidgetsTestRunner, ein auf wxWidgets basierender Test-Runner

Beispiel

Dieses Beispiel zeigt einen Unit-Test. Die Klasse Kalkulator ist das zu testende Objekt, KalkulatorTest der Unit-Test. (Für die Ausführung des Tests muss der Programmstartpunkt modifiziert werden.)

Klasse Kalkulator

...
class Kalkulator
{
 public:
  // Berechne die Wurzel von k
  double squareRoot(double k) { return sqrt(k); }
};

Klasse KalkulatorTest

#include <cppunit/extensions/HelperMacros.h>
 
class KalkulatorTest : public CPPUNIT_NS::TestFixture
{
 CPPUNIT_TEST_SUITE( KalkulatorTest );
 CPPUNIT_TEST( testSqrt );
 CPPUNIT_TEST_SUITE_END();
 
 public:
  void testSqrt();
};
 
CPPUNIT_TEST_SUITE_REGISTRATION( KalkulatorTest );
 
void KalkulatorTest::testSqrt() {
 Kalkulator kalk;
 CPPUNIT_ASSERT(kalk.squareRoot(9) == 3);
}

Weblinks

Einzelbelege

  1. http://cppunit.sourceforge.net/cppunit-wiki/FrontPage, 25. Oktober 2006

Wikimedia Foundation.

Игры ⚽ Нужна курсовая?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • CPPUnit — Saltar a navegación, búsqueda CPPUnit es un módulo framework de pruebas unitarias para C++, descrito como una adaptación de JUnit en C++. Enlaces externos Website del proyecto. Llopis, Noel (28 December 2004). «Exploring the C++ Unit Testing… …   Wikipedia Español

  • CppUnit — Stable release 1.12.1 / February 19, 2008; 3 years ago (2008 02 19) Written in C++ Type Unit testing tool …   Wikipedia

  • Liste von Modultest-Software — Inhaltsverzeichnis 1 ABAP 2 C 3 C++ 4 Cobol 5 Delphi …   Deutsch Wikipedia

  • Testautomation — Unter Testautomatisierung (auch Testautomation) ist die Automatisierung von Aktivitäten im Test zu verstehen, sowohl beim Softwaretest als auch beim automatisierten Test von Hardware, dem Hardwaretest. Inhaltsverzeichnis 1 Motivation 2… …   Deutsch Wikipedia

  • Test unit — Test unitaire Pour les articles homonymes, voir Test. En programmation informatique, le test unitaire est un procédé permettant de s assurer du fonctionnement correct d une partie déterminée d un logiciel ou d une portion d un programme (appelée… …   Wikipédia en Français

  • Test unitaire — Pour les articles homonymes, voir Test. En programmation informatique, le test unitaire est un procédé permettant de s assurer du fonctionnement correct d une partie déterminée d un logiciel ou d une portion d un programme (appelée… …   Wikipédia en Français

  • Tests unitaires — Test unitaire Pour les articles homonymes, voir Test. En programmation informatique, le test unitaire est un procédé permettant de s assurer du fonctionnement correct d une partie déterminée d un logiciel ou d une portion d un programme (appelée… …   Wikipédia en Français

  • Юнит-тестирование — Модульное тестирование (англ. unit testing)  процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы. Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это… …   Википедия

  • Юнит-тест — Модульное тестирование (англ. unit testing)  процесс в программировании, позволяющий проверить на корректность отдельные модули исходного кода программы. Идея состоит в том, чтобы писать тесты для каждой нетривиальной функции или метода. Это… …   Википедия

  • JUnit — Infobox Software name = JUnit caption = developer = Kent Beck, Erich Gamma, David Saff latest release version = 4.5 latest release date = release date|2008|08|08 operating system = Cross platform programming language = Java genre = Unit testing… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”