Ich versuche, eine Klasse zu testen, die einige Hadoop-Webdienste aufruft. Der Code ist so ziemlich in der Form:
method() {
...use Jersey client to create WebResource...
...make request...
...do something with response...
}
zB gibt es eine Methode zum Erstellen eines Verzeichnisses, eine Methode zum Erstellen eines Ordners usw.
Wie kann ich dies testen, da der Code einen externen Webdienst betrifft, über den ich keine Kontrolle habe? Ich könnte versuchen, den Webservice-Client / die Antworten zu verspotten, aber das verstößt gegen die Richtlinie, die ich in letzter Zeit häufig gesehen habe: "Verspotten Sie keine Objekte, die Sie nicht besitzen". Ich könnte eine Dummy-Web-Service-Implementierung einrichten - wäre das noch ein "Unit-Test" oder wäre es dann ein Integrationstest? Ist es einfach nicht möglich, einen Unit-Test auf diesem niedrigen Niveau durchzuführen - wie würde ein TDD-Praktiker damit umgehen?