7
非常に単純なプロジェクトをスタックで作成しました。実行ファイル、ライブラリ、関連するカバールファイル内のテストターゲットが含まれています。スタックghci経由でghciにコードをロードすると、別のモジュールに入っていてもそこにテストにアクセスすることはできません。そのような方法でそれを使用する方法はありますか?ghciでテストをスタックにロードする方法
非常に単純なプロジェクトをスタックで作成しました。実行ファイル、ライブラリ、関連するカバールファイル内のテストターゲットが含まれています。スタックghci経由でghciにコードをロードすると、別のモジュールに入っていてもそこにテストにアクセスすることはできません。そのような方法でそれを使用する方法はありますか?ghciでテストをスタックにロードする方法
お試しstack ghci (your project name):(the test suite name)
次にmain
と入力すると、テストが実行されます。
例:
あなた.cabalプロジェクトファイルは、以下の値を持っていた場合:
name: ExampleProject
...
test-suite Example-test
を次に実行するコマンドがstack ghci ExampleProject:Example-test
(編集@クリスStryczynskiによって提案された)
だろうtest
とsrc
ディレクトリを見て、でリロードしたときに更新されるようにする、実行:
stack ghci --ghci-options -isrc --ghci-options -itest ExampleProduct:Example-test
ありがとう!出来た! –
これを行うと、 ':r'はあなたのlibへの変更をリロードしません。 ':r'がlibとテストを再コンパイルするようにする方法を知っていますか? –
@SeanClarkHessテストを設定するにはいくつかの方法があります。テストするライブラリをビルド依存のテストスイートに追加するか、ライブラリソースフォルダをテストスイートのhs-source-dirsに追加するだけで設定できます。私は信じています* ':r'は前者ではなく後者で働いていますが、私は確信していません。 ご迷惑をおかけしましたことをお詫び申し上げます。 – Libby