Clojure:
テストの作成

方法

ClojureはJVMを活用しており、さまざまなテストフレームワークをサポートしています。しかし、一般的に使用される組み込みライブラリはclojure.testです。こちらが簡単な例です:

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

(deftest test-addition
  (testing "加算機能"
    (is (= 4 (add 2 2)))
    (is (= 7 (add 3 4)))))

(run-tests)

このテストを実行した後、以下のような出力が表示されます:

Testing example.test

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

より多くの機能を求める人は、Midjetest.check などのサードパーティライブラリを利用することができます。以下はMidjeを使用した同様のテストの例です:

まず、プロジェクト.cljの依存関係にMidjeを追加します:

[midje "1.9.9"]

次に、Midjeを使用したテストは以下のようになります:

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

(fact "加算のテスト"
  (add 2 2) => 4
  (add 3 4) => 7)

lein midjeを使ってテストを実行すると、出力は以下のようなものになります:

All checks (2) succeeded.