评论由:alexmiller 发布
这已在clojure.test命名空间文档字符串中进行了更深入的说明
`
Fixtures 可以以两种方式与命名空间相关联。\"each\"
Fixtures 会在创建的每个测试函数中重复运行一次
使用 \"deftest\" 或 \"with-test\"。\"each\" fixtures 对于
为每个测试建立一致的前/后状态很有用,例如
清除数据库表。
\"each\" fixtures 可以这样附加到当前命名空间中
(use-fixtures :each fixture1 fixture2 ...)
fixture1、fixture2 等于上面的示例中的函数。
它们也可以是匿名函数,如下所示
(use-fixtures :each (fn [f] setup... (f) cleanup...))
另一种 fixture 类型的 fixture,称为 \"once\" fixture,只会运行一次
在命名空间中所有测试周围。\"once\" fixtures 对于
只需要执行一次的任务很有用,比如建立
数据库连接,或对于耗时任务。
这样将 \"once\" fixtures 附加到当前命名空间中
(use-fixtures :once fixture1 fixture2 ...)
`
我并没有真正回答你的问题,只是想知道你是否看到了这一点,以及这是否改变了你的问题。