2016-12-06 12 views
0

ほとんどのプログラミング言語では、状況によってはテストをスキップするのが簡単です。 HSKベースのテストスイートであるHSKでこれを行う適切な方法はありますか?HSpecテストスイートでテストをスキップすることはできますか?

+0

プログラミング言語とテストシステムの接続は何ですか? :) – freestyle

+0

私は、テストフレームワークの実装を意味するテストケースの実装を意味しました。 – palik

答えて

1

私が正しく理解している場合、コアHSpecにはこのケース専用のソリューションはありません。しかし、あなたはそれについて冗長なことなくテストをスキップすることができます。たとえば:

main = hspec $ do 
    ... 
    when isDatabaseServerRunning $ do 
     describe "database" $ do 
      it "test some one" $ do 
       ... 

別の解決策は、多分、スキップされた理由に関するメッセージをPendingにテストの結果を変更するためのmapSpecItem_のような機能を使用します。例:

skip :: String -> Bool -> SpecWith a -> SpecWith a 
skip _ False = id 
skip why True = mapSpecItem_ updateItem 
    where 
    updateItem x = x{itemExample = \_ _ _ -> return . Pending . Just $ why} 
+0

>私が正しく理解していれば、HSpecのコアはこのケースに対して特別な解決策を持っていません。 ありがとうございます@freestyle、私の前提を確認します – palik

関連する問題