如何检查是否使用serverspec安装了特定版本的msi?

如何检查是否使用serverspec安装了特定版本的msi?,rspec,windows-installer,serverspec,Rspec,Windows Installer,Serverspec,我们正在尝试在windows中使用ServerSpec验证应用程序安装。我已经在ruby文件中写了以下几行(使用Test.rb) 我像这样运行脚本 rspec 'C:\Ruby Scripts\Test.rb' --format html --out 'C:\Ruby Scripts\Test.html' 它正在正确地检查这一点。但我想检查msi(windows安装程序包)的特定版本。如何在serverspec中执行此操作?查看以下文档: 匹配器已安装接受带有版本的链。因此,使用RSpec 3

我们正在尝试在windows中使用ServerSpec验证应用程序安装。我已经在ruby文件中写了以下几行(使用Test.rb)

我像这样运行脚本

rspec 'C:\Ruby Scripts\Test.rb' --format html --out 'C:\Ruby Scripts\Test.html'
它正在正确地检查这一点。但我想检查msi(windows安装程序包)的特定版本。如何在serverspec中执行此操作?

查看以下文档:

匹配器
已安装
接受带有版本的链
。因此,使用RSpec 3语法,我们有:

describe package('ApplicationCorePackage') do
  it { expect(subject).to be_installed.with_version('version') }
end

如果您的问题是您是否需要MSI提供程序的
by
链,那么答案是您不需要。

您能澄清一下您对MSI的意思吗?@SimoneCarletti它是windows installer软件包。@SimoneCarletti我已经尝试了一些并修改了我的问题。我希望的主题是什么?Msi没有主题。。是产品名称吗?此代码块中的主题将解析为
'applicationrepackage'
,即RSpec方法参数。
describe package('ApplicationCorePackage') do
  it { expect(subject).to be_installed.with_version('version') }
end