首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >找不到模块“Test.Hspec.Discover”

找不到模块“Test.Hspec.Discover”
EN

Stack Overflow用户
提问于 2019-07-04 23:03:30
回答 1查看 986关注 0票数 2

我是个菜鸟。

我尝试将单个Hspec/QuickCheck测试从一个更大的项目复制并粘贴到我自己的项目中,这样我就可以调整它并查看它的行为。

我有这样的结构:

代码语言:javascript
复制
myproject/test/Spec.hs
myproject/test/mytest.hs

从我的Spec.hs刚刚拥有的另一个项目复制:

代码语言:javascript
复制
{-# OPTIONS_GHC -F -pgmF hspec-discover #-}

这与docs:http://hspec.github.io/hspec-discover.html中的示例完全相同。

另外,我在我的package.yml

代码语言:javascript
复制
tests:
  myproject-test:
    main:                Spec.hs
    source-dirs:         test
    ghc-options:
    - -threaded
    - -rtsopts
    - -with-rtsopts=-N
    dependencies:
    - myproject
    - QuickCheck
    - hspec-megaparsec
    - hspec-discover

当我运行stack test时,会得到以下错误:

代码语言:javascript
复制
$ stack test
hspec-discover  > configure
hspec-discover  > Configuring hspec-discover-2.6.1...
hspec-discover  > build
hspec-discover  > Preprocessing library for hspec-discover-2.6.1..
hspec-discover  > Building library for hspec-discover-2.6.1..
hspec-discover  > [1 of 4] Compiling Paths_hspec_discover
hspec-discover  > [2 of 4] Compiling Test.Hspec.Discover.Config
hspec-discover  > [3 of 4] Compiling Test.Hspec.Discover.Sort
hspec-discover  > [4 of 4] Compiling Test.Hspec.Discover.Run
hspec-discover  > Preprocessing executable 'hspec-discover' for hspec-discover-2.6.1..
hspec-discover  > Building executable 'hspec-discover' for hspec-discover-2.6.1..
hspec-discover  > [1 of 2] Compiling Main
hspec-discover  > [2 of 2] Compiling Paths_hspec_discover
hspec-discover  > Linking .stack-work/dist/x86_64-osx/Cabal-2.4.0.1/build/hspec-discover/hspec-discover ...
hspec-discover  > copy/register
hspec-discover  > Installing library in /Users/anentropic/.stack/snapshots/x86_64-osx/9ea21a5325b81a2dfa4286ce80451092e847f54dde50f04e1f7e952425f2d334/8.6.5/lib/x86_64-osx-ghc-8.6.5/hspec-discover-2.6.1-GcEMs7l4z3NWJQPD5eMXU
hspec-discover  > Installing executable hspec-discover in /Users/anentropic/.stack/snapshots/x86_64-osx/9ea21a5325b81a2dfa4286ce80451092e847f54dde50f04e1f7e952425f2d334/8.6.5/bin
hspec-discover  > Registering library for hspec-discover-2.6.1..
Building all executables for `myproject' once. After a successful build of all of them, only specified executables will be rebuilt.
myproject> configure (lib + exe + test)
Configuring myproject-0.1.0.0...
myproject> build (lib + exe + test)
Preprocessing library for myproject-0.1.0.0..
Building library for myproject-0.1.0.0..
[1 of 2] Compiling Lib
[2 of 2] Compiling Paths_waterloo_haskell
Preprocessing executable 'myproject-exe' for myproject-0.1.0.0..
Building executable 'myproject-exe' for myproject-0.1.0.0..
[1 of 2] Compiling Main
[2 of 2] Compiling Paths_waterloo_haskell
Linking .stack-work/dist/x86_64-osx/Cabal-2.4.0.1/build/myproject-exe/myproject-exe ...
Preprocessing test suite 'myproject-test' for myproject-0.1.0.0..
Building test suite 'myproject-test' for myproject-0.1.0.0..
[1 of 2] Compiling Main

/Users/anentropic/Documents/Dev/Personal/waterloo/myproject/test/Spec.hs:3:1: error:
    Could not find module ‘Test.Hspec.Discover’
    Perhaps you meant
      Test.Hspec.Discover.Run (from hspec-discover-2.6.1)
      Test.Hspec.Discover.Sort (from hspec-discover-2.6.1)
    Use -v to see a list of the files searched for.


--  While building package myproject-0.1.0.0 using:
      /Users/anentropic/.stack/setup-exe-cache/x86_64-osx/Cabal-simple_mPHDZzAJ_2.4.0.1_ghc-8.6.5 --builddir=.stack-work/dist/x86_64-osx/Cabal-2.4.0.1 build lib:myproject exe:myproject-exe test:myproject-test --ghc-options " -fdiagnostics-color=always"
    Process exited with code: ExitFailure 1
Progress 2/3

有很多事我不明白。但是这里的主要难题是输出显示hspec-discover-2.6.1已成功安装。

我没有在代码中任何地方编写Test.Hspec.Discover,所以我必须假设错误来自{-# OPTIONS_GHC -F -pgmF hspec-discover #-} (错误消息指向作为源的Spec.hs )。

嗯,我做错什么了?hspec-discover找不到自己?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-05 02:51:36

对该模块名执行Hoogle搜索显示它在hspec中,而不是hspec- for中。请尝试在hspec上添加测试套件依赖项。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56894959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档