Clojure:
Tests Schreiben

Wie:

Clojure nutzt die JVM und unterstützt verschiedene Test-Frameworks. Ein häufig verwendetes eingebautes Bibliothek ist jedoch clojure.test. Hier ist ein einfaches Beispiel:

(ns example.test
  (:require [clojure.test :refer :all]
            [example.core :refer :all]))

(deftest test-addition
  (testing "Additionsfunktionalität"
    (is (= 4 (add 2 2)))
    (is (= 7 (add 3 4)))))

(run-tests)

Nach dem Ausführen dieses Tests würden Sie eine Ausgabe ähnlich wie folgt sehen:

Testing example.test

Ran 2 tests containing 2 assertions.
0 failures, 0 errors.

Für diejenigen, die reichhaltigere Funktionen suchen, kann man Drittanbieter-Bibliotheken wie Midje oder test.check nutzen. So könnten Sie Midje für einen ähnlichen Test verwenden:

Fügen Sie zunächst Midje zu Ihren project.clj Abhängigkeiten hinzu:

[midje "1.9.9"]

Dann könnte Ihr Test mit Midje so aussehen:

(ns example.test
  (:require [midje.sweet :refer :all]
            [example.core :refer :all]))

(fact "Teste Addition"
  (add 2 2) => 4
  (add 3 4) => 7)

Beim Ausführen des Tests über Midje mit lein midje würde die Ausgabe etwa folgendes anzeigen:

All checks (2) succeeded.