Ruby 烧杯Rspec运行系统命令

Ruby 烧杯Rspec运行系统命令,ruby,rspec,acceptance-testing,beaker,Ruby,Rspec,Acceptance Testing,Beaker,我正在为windows上的puppet构建一个验收测试,我需要确保某些安全策略在应用清单后确实发生了更改。我有 it 'should modify security policy' do system("secedit.exe /export /areas SECURITYPOLICY /cfg C:\policy.txt") File.read('C:\policy.txt').should include "Banner Title" end 当我运行此命令时,我得到一

我正在为windows上的puppet构建一个验收测试,我需要确保某些安全策略在应用清单后确实发生了更改。我有

it 'should modify security policy' do
     system("secedit.exe /export /areas SECURITYPOLICY /cfg C:\policy.txt")
     File.read('C:\policy.txt').should include "Banner Title"
end
当我运行此命令时,我得到一个与我正在创建的文件相关的无此类文件或目录,这使我相信将策略拉入文件的初始命令没有运行


有什么我做错了吗?

Rspec可能没有在您需要它查看的目录中查找。在
rails\u helper.rb
spec\u helper.rb
文件中,可能需要类似于以下内容的行:

Dir[Rails.root.join('app/policies/**/*.rb')].each { |f| require f }

问题是系统函数将运行我在主机上本地指定的任何命令,但我试图在其中运行puppet环境的VM除外。最后改为使用on(server,'COMMAND')函数