1

コマンドの出力とファイルのコンテンツを照合する Chef InSpec コマンド リソースを実行しています。次に、次のリソースを使用した後、そのファイルを削除しています。しかし、次のコマンドは戻り""、テストは失敗します。

describe command("some command") do
  its ('stdout') {should match /some_regex/}
end

しかし、ファイルを削除しないと、上記のコマンドは期待される出力を返します。InSpec リソースとファイルの削除に問題はありますか?

4

1 に答える 1

1

Rspec (および InSpec) には、Chef のものと似た (しかし無関係で異なる) 独自の 2 パス読み込みモデルがあります。つまり、コードでは後で削除されているように見えますが、テストが実行される前に削除している可能性があります。after(:all)ブロックを使ってみては?それが通常の RSpec でのやり方ですが、InSpec はいくつかの場所で Rspec から逸脱しているため、100% うまくいくわけではありません。

于 2016-08-09T20:10:07.110 に答える