【问题标题】:How to fix "clojure.test.check.generators never required" when exercising a function in clojurescript?在clojurescript中执行函数时如何修复“clojure.test.check.generators never required”?
【发布时间】:2019-09-10 19:18:25
【问题描述】:

在 Clojurescript 环境中,当我运行以下代码时,我收到错误 Var clojure.test.check.generators/simple-type-printable does not exist, clojure.test.check.generators never required

cljs.user=> (require '[clojure.spec.alpha :as spec])
nil
cljs.user=> (require '[clojure.spec.test.alpha :as stest])
nil
cljs.user=> (defn jp-a [n] n)
#'cljs.user/jp-a
cljs.user=> (spec/fdef jp-a :args (spec/cat :n int?))
cljs.user/jp-a
cljs.user=> (spec/exercise-fn `jp-a)
#object[Error Error: Var clojure.test.check.generators/simple-type-printable does not exist, clojure.test.check.generators neverrequired]

【问题讨论】:

    标签: clojurescript clojure.spec


    【解决方案1】:

    这个错误与this issue有关。

    您只需在您的project.clj 中将[org.clojure/test.check "0.10.0"](或更新版本)定义为依赖项。

    【讨论】:

      【解决方案2】:

      这实际上是记录在here

      规范生成器依赖于 Clojure 属性测试库 test.check。但是,此依赖项是动态加载的,您可以使用除生成、练习和测试之外的规范部分,而无需将 test.check 声明为运行时依赖项。当您希望使用规范的这些部分时(通常在测试期间),您需要声明对 test.check 的开发依赖项。

      在 Leiningen 将其添加到 project.clj:

      :profiles {:dev {:dependencies [[org.clojure/test.check "0.9.0"]]}}
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-10-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-08-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多