Clojure:
Testien kirjoittaminen
Kuinka:
Clojure, hyödyntäen JVM:ää, tukee erilaisia testauskehyksiä. Kuitenkin yleisesti käytetty sisäänrakennettu kirjasto on clojure.test
. Tässä on yksinkertainen esimerkki:
(ns example.test
(:require [clojure.test :refer :all]
[example.core :refer :all]))
(deftest test-addition
(testing "Lisäysfunktio"
(is (= 4 (add 2 2)))
(is (= 7 (add 3 4)))))
(run-tests)
Tämän testin suorittamisen jälkeen näkisit tulosteen, joka muistuttaisi:
Testing example.test
Ran 2 tests containing 2 assertions.
0 failures, 0 errors.
Niille, jotka etsivät ominaisuuksiltaan rikkaampia vaihtoehtoja, voi käyttää kolmannen osapuolen kirjastoja, kuten Midje
tai test.check
. Tässä on, miten voisit käyttää Midjeä vastaavaan testiin:
Lisää ensin Midje projektisi clj-riippuvuuksiin:
[midje "1.9.9"]
Sitten testisi Midjen kanssa saattaisi näyttää tältä:
(ns example.test
(:require [midje.sweet :refer :all]
[example.core :refer :all]))
(fact "Testataan lisäystä"
(add 2 2) => 4
(add 3 4) => 7)
Testin suorittamisen jälkeen Midjen kautta komennolla lein midje
, tuloste näyttäisi jotakin vastaavaa:
Kaikki tarkistukset (2) onnistuivat.