Soll ich schreiben von Unit-Tests für CRUD-Operationen, wenn ich bereits die Integration-Tests?

In unserem letzten Projekt Sonar beschwerte sich über eine schwache test-coverage. Wir bemerkten, dass es nicht der Meinung integration-tests standardmäßig. Neben der Tatsache, dass Sie können konfigurieren, Sonar, es wird also betrachten Sie (JaCoCo-plugin), wir diskutieren über die Frage, in unser team, wenn es wirklich das Bedürfnis zu schreiben Unit-Tests, wenn Sie decken alle service-und Datenbank-Ebene mit integration tests sowieso.

Was meine ich mit integration-tests ist, dass alle unsere tests, die gegen eine dedizierte Oracle-Instanz des gleichen Typs, die wir verwenden in der Produktion. Wir verspotten Sie nicht alles. Wenn ein Dienst abhängig ist, ein weiterer service, den wir verwenden, der eigentliche Dienst. Daten, die wir benötigen, bevor Sie einen test konstruieren wir durch einige factory-Klassen, die unsere Dienste nutzen/Repositories (DAOs).

Also aus meiner Sicht - das schreiben von Integrations-tests für einfache CRUD-Operationen insbesondere bei der Verwendung von frameworks wie Spring Data/Hibernate ist kein großer Aufwand. Manchmal ist es sogar einfacher, weil Sie nicht denken, was und wie es zu verspotten.

Also wieso sollte ich das schreiben von Unit Tests für meine CRUD-Operationen, sind weniger zuverlässig als die Integration-Tests, die ich schreiben kann?

Der einzige Punkt den ich sehe, ist, dass die integration der tests mehr Zeit in Anspruch nehmen, zu laufen, je größer das Projekt wird. So dass Sie nicht wollen, um Sie laufen alle vor dem check-in. Aber ich bin mir nicht so sicher, ob das so schlimm ist, wenn Sie eine CI-Umgebung mit Jenkins/Hudson, die den job machen.

So irgendwelche Meinungen oder Vorschläge werden sehr geschätzt!

InformationsquelleAutor fischermatte | 2012-09-17
Schreibe einen Kommentar