使用clojure.test测试简单的函数调用

使用clojure.test测试简单的函数调用,clojure,clojure-testing,Clojure,Clojure Testing,我刚开始玩Clojure,在一些基本的东西上有困难。我只想测试一个简单的函数,它可以执行1+1 下面是core.clj (ns core) (defn run [] (+ 1 1)) (ns core-test (:require [clojure.test :refer :all] [core :refer :all])) (deftest a-test (testing "Core" (is (= 2 run)))) 下

我刚开始玩Clojure,在一些基本的东西上有困难。我只想测试一个简单的函数,它可以执行1+1

下面是
core.clj

(ns core)

(defn run []
  (+ 1 1))
(ns core-test
  (:require [clojure.test :refer :all]
            [core :refer :all]))

(deftest a-test
  (testing "Core"
    (is (= 2 run))))
下面是测试,
core test.clj

(ns core)

(defn run []
  (+ 1 1))
(ns core-test
  (:require [clojure.test :refer :all]
            [core :refer :all]))

(deftest a-test
  (testing "Core"
    (is (= 2 run))))
这是结果

lein test core-test

lein test :only core-test/a-test

FAIL in (a-test) (core_test.clj:7)
Core
expected: (= 2 run)
  actual: (not (= 2 #object[core$run 0x12f8b1d8 "core$run@12f8b1d8"]))

Ran 1 tests containing 1 assertions.
1 failures, 0 errors.
Tests failed.

您没有调用
run
。现在您正在将
2
与函数进行比较。使用
(=2(运行))

您没有调用
run
。现在您正在将
2
与函数进行比较。使用
(=2(运行))

此模板项目可以帮助您开始:此模板项目可以帮助您开始: