Ich habe ein paar Posts gesehen (zum Beispiel hier 1 ), der vorschlägt, mit groovy Integrationstests für Java-Anwendungen in einer groovigen Programmiersprache zu schreiben. Ich arbeite an einer Anwendung mit den folgenden Technologien: Java 7, Java EE 6, POSTGRESQL
Ich weiß, groovy ist
Aber gibt es einen besonderen Grund, es für ITs zu verwenden? Das Hinzufügen einer anderen Programmiersprache zu Ihrer Codebasis würde Ihr Leben nicht zur Hölle machen? Ich denke, ich verpasse etwas von dem Bild, also würde ich Ihre Antworten zu schätzen wissen.
Ich werde bald ein Projekt starten, das genau den gleichen Stack hat wie du, aber Groovy wird auch Produktionscode sein, nicht nur Tests.
Es gibt kein Problem beim Hinzufügen von Groovy zu Ihrer Codebase, weil es eine einfache Sprache ist. Es wäre eine andere Geschichte, wenn Sie eine Sprache einschließen würden, die nicht viel wie Java aussieht, sagen Haskell oder Prolog. Sie enthalten bereits Facelets, EL, CSS, HTML und Javascript. Welcher Teil des Hinzufügens einer anderen Sprache ist schlecht? : -)
Die wichtigsten Punkte, die ich in IT-Tests für Groovy aufrufe:
Andere Dinge, die man in Groovy einfach vergessen sollte:
Wir hatten Testteams in meinen zwei letzten Firmen, die nicht im Produktionscode arbeiteten, aber ziemlich schnell Tests in Groovy begannen und die Sprache genossen: keine Sorgen um Typen und Sachen, nur Arbeitstests!
Ich denke, es sollte gelesen werden, da Groovy besonders gut zum Schreiben von Tests im Vergleich zu Java ist. Es gibt nichts in Groovy, das Sie in Java nicht tun können, aber es würde oft enorme Anstrengungen erfordern. So etwas wie Spock wäre in Java nahezu unlesbar.
Es sind viele kleine Dinge, die es so machen. Es gibt zum Beispiel Power-Asserts, die die Ausgabe von Assertionsfehlern von Assert-Anweisungen in Groovy sehr angenehm machen. Die nahtlose Integration ermöglicht keinen zusätzlichen Code zum Ausrichten der Sprachenwelten. Mit den DSL-Funktionen können Sie problemlos minimale DSLs schreiben, um den Standardcode zu reduzieren. All dies ist da, damit Sie sehen können, was Sie tatsächlich testen und wie. Denn wenn ein Test fehlschlägt, müssen Sie diesen Teil genau verstehen und die Zeit, die Sie für das Schreiben von Tests benötigen, reduzieren.
Alles, was ich empfehlen kann, ist, es ein wenig auszuprobieren. Es überzeugt dich dann oder nicht. Wenn Ihre Fälle sehr einfach sind, dann ist Java vielleicht gut genug für Sie. Wenn das Testen komplizierter wird, dann könnte es eine kleinere Hürde sein, etwas Groovy-Code zu verstehen. Nicht zu vergessen: Als Java-Entwickler muss man Groovy nicht zu sehr verstehen, um es richtig einsetzen zu können und schöne Unit-Tests damit schreiben zu können.
Tags und Links java continuous-integration integration-testing groovy java-ee-6