MiniTest で Ruby 1.9.3 を使用しています。テストごとに 1 つのアサーションを使用することがベスト プラクティスであることはわかっていますが、配列を比較する場合など、動的にアサーションを作成したい場合があります。
if added_skus.each { |s| assert(skus_in_cart.include?(s), "SKUs #{added_skus} or SKU amount do not match SKUs #{skus_in_cart} on Cart page.") }
puts "Product SKUs #{added_skus} match SKUs #{skus_in_cart} on Cart page."
end
ご存知のように、最初のアサーションの失敗に達すると、テストは終了します。テストを続行し、テスト終了後にすべての失敗を報告したいと思います。
古いバージョンの test/unit と Ruby 1.8.7 (test/unit ライブラリの add_failure メソッド) を使用したソリューションを見つけましたが、MiniTest と Ruby 1.9.3 の適切なソリューションが見つかりません。フィードバックをいただければ幸いです (それが間違っていることを意味する場合でも、正しい方向に向けてください)。ありがとう!