2017-06-05 4 views
4

私はテストプロジェクトでexpectoを実行しようとしています。F#のExpectoテストは強制的に失敗しても常に成功します

コンパイルして正常に動作しますが、実際に動作していることを確認したかっただけです。だから、私はそれに失敗事例を与え、それはパスする。

私はここで愚かなことを逃しましたか?

私のテスト・セットアップ

let tests = 
    testList "Test Group" [ 
     test "Testing fail test" { 
      let result = false 
      Expecto.Expect.isTrue result 
     } 
    ] 

let runTests args = 
    runTestsWithArgs defaultConfig args tests 

[08:52:06 INF] EXPECTO? Running tests... 
[08:52:06 INF] EXPECTO! 1 tests run in 00:00:00.0569286 – 1 passed, 0 ignored, 0 failed, 0 errored. ᕙ໒(˵ ಠ ╭͜ʖ╮ ಠೃ ˵)७ᕗ 

答えて

6

テストからの出力は、すべてのExpecto.Expectの機能が失敗した場合に印刷するためのメッセージであり終わりで文字列パラメータを取ります。あなたはそのパラメータを提供していないので、あなたのExpecto.Expect.isTrue result式の型はstring -> unitです。まだ実際にはisTrueは呼び出されていません。 (IDEの式の下に値が無視されるという緑色の波線が表示されるはずです)。電話にExpecto.Expect.isTrue result "should fail"のような文字列を追加すると、テストは失敗します。

+0

それを修正しました....ありがとうございました –

+3

また、「警告をエラーとして」コンパイルすることをお勧めします。 –

関連する問題