Ich war an einem Projekt arbeiten und das folgende Problem konfrontiertIntegrationstest best practice
ich eine Methode in der Klasse erstellt einige Benutzer zu finden und Logik anwenden, wirft es eine Ausnahme, wenn etwas Unerwartetes anderes Objekt Benutzer zurückgegeben wird entweder mit ID null oder mit einem Wert
Ich schrieb Unit Test für alle Testfälle, jetzt in callee habe ich vergessen, Bedingung für Null-ID hinzuzufügen.
Was ist die beste Vorgehensweise, um diese Art von Fehler zu behandeln. Soll ich Integrationstests mit allen Testfällen schreiben Oder sollte der Integrationstest nur einen glücklichen Weg haben?
Zweitens, ist es im Integrationstest gut, eingebettete Datenbank anstelle von tatsächlichen db zu verwenden? Ich dachte, eingebettete Datenbank für Integrationstest zu verwenden, aber wie kann ich die Abfragen prüfen, die anbieterspezifisch sind, Beispiel rownum in Oracle und Begrenzung in mysql. In meinem aktuellen env verwenden wir Oracle und eingebettete Datenbank kann ich h2 verwenden. Ich verwende Ebene jdbc
Dank
Als allgemeine Richtlinie sollte jeder Test (Einheit oder Integration) alle Rückgabetypen und deren Wertebereich testen. Ein Integrationstest würde alle Aspekte des Produktionscodes nachahmen. Es könnte die tatsächlichen Objekte durch Mock-Objekte ersetzen. Siehe hierzu [link] (http://stackoverflow.com/questions/520064/what-is-unit-test-integration-test-smoke-test-regression-test) für Details. Nicht klar, was du im letzten Absatz ab dem 2. Satz meinst, vielleicht klar? – NameRakes
Danke namakers .. ich habe den zweiten Teil der Frage bearbeitet –