Clojure:
Skrive tester

Hvordan:

Clojure, ved å dra nytte av JVM, støtter forskjellige testrammeverk. Imidlertid er et ofte brukt innebygd bibliotek clojure.test. Her er et enkelt eksempel:

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

(deftest test-addition
  (testing "Addisjonsfunksjonalitet"
    (is (= 4 (add 2 2)))
    (is (= 7 (add 3 4)))))

(run-tests)

Etter å ha kjørt denne testen, ville du se en utskrift som ligner på:

Tester example.test

Kjørte 2 tester som inneholdt 2 påstander.
0 feil, 0 feil.

For de som søker mer funksjonsrike alternativer, kan man utnytte tredjepartsbiblioteker som Midje eller test.check. Slik kan du bruke Midje for en lignende test:

Først, legg til Midje i dine project.clj avhengigheter:

[midje "1.9.9"]

Deretter kan testen din med Midje se slik ut:

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

(fact "Tester addisjon"
  (add 2 2) => 4
  (add 3 4) => 7)

Ved å kjøre testen gjennom Midje med lein midje, ville utskriften vise noe liknende:

Alle sjekker (2) lyktes.