Hallo Zusammen...
Da wir ja alle täglich unsere Klassen per Unittests überprüfen, hat ja sicherlich jeder hierzu eine Idee...
Spaß beiseite...
Oft sind Klassen sehr simpel und einfach zu testen. Was aber wenn die Funktionalität einer Klasse von Faktoren wie Kommunikation oder Timing abhängen, was dann?
Beispiel: Eine http Komponente... Für einen ernsthaften Funktionstest wird ein Http-Server benötigt. (Oder eine Simulation von einem)
Bei einer Kommunikation die immer ein Feedback liefert (ACK) mag das noch zu bewerkstelligen sein, aber was ist mit UPnP bzw. UDP / Broadcast Kommunikation.
Der Sender hat keine Ahnung, ob der Empfänger die Nachricht empfangen hat.
Egal wie wir das Kind nennen : Unittest / Integrationstest / ggf. sogar
GUI Test, soll für die Fragestellung keine Rolle spielen.
Bleiben wir mal bei dem Beispiel HTTP... Für einen vollständigen Test benötigt man eine Gegenstelle, also einen Http-Server. Das kann natürlich ein MOCK sein der
einen HTTP-Server simuliert (auch die möglichen Fehler). Aber wer hat schon Lust extra noch einen Server zu programmieren?
Dem
Unit-Test also eine 2. Exe mitgeben und im Setup starten / im Teardown killen?
Wie testet Ihr solche Klassen?
Mavarik