Ich bin in einer Situation, in der ich versuche, Test Driven Development zu verwenden. Ich habe keine Erfahrung mit Swift, Xcode, Apple, IOS, TDD oder sogar dem MacBook, das ich für die Entwicklung verwende. Im Grunde bin ich ein .NET Entwickler in einer sehr ungewohnten Situation.Test Driven Upload-Methode?
Mein aktuelles Problem ergibt sich aus meiner Unkenntnis, wie man einen Unit-Test macht, der eine void-Methode testet.
Ich versuche, eine Methode zu erstellen, die ein Bild an einen Server sendet.
Aber mein Problem hier ist, dass ich nicht weiß, wie man eine Methode prüft, die keinen Wert zurückgibt.
Ich stelle mir vor, dass meine Methode etwas ähnliches wie dies sein wird:
public func Upload(_ image: UIImage)
und ich denke, dass muss ich werde einige Version von URLSession
implementieren, müssen schließlich eine resume()
Methode aufrufen. Aber wie kann ich testen, ob diese Methode das tut, was sie tun soll, ohne das Netzwerk aufzurufen? und danach, wie mache ich einen Integrationstest, bei dem ich sehen kann, dass das erwartete Ergebnis tatsächlich eine Datei ist, die auf den Server hochgeladen wurde? Momentan befindet sich der Server auf dem Computer, auf dem ich gerade entwickle, aber die eigentliche Software läuft von einem TestIphone, das mir ausgestellt wurde. Teil der Lösung sein wird, nicht die Prüfung der Lösung
Ich habe jetzt Tagen online gesucht und das Beste, was ich habe diesen Link http://swiftdeveloperblog.com/image-upload-with-progress-bar-example-in-swift/ über gewesen kommen Aber es läuft nur Bits und Stücke, die ich vorstellen.
Ich denke, es ist wichtig hinzuzufügen, ich bin sehr gegen die Erstellung zu viel Komplexität für Testzwecke. Testen sollte einfach und unkompliziert sein.
Ich mag Ihren Ansatz und ich werde das jetzt versuchen :) danke, dass Sie sich die Zeit genommen haben, mir diese Antwort zu geben – Helbo