- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
如果我有一个具有以下属性的 Chef Recipe
node.default["cookbook"]["directory"] = %w(/mnt/directory1 /mnt/directory2)
node["cookbook"]["directory"].each do |dir|
directory dir do
owner "user"
mode 0644"
action :create
end
end
我将如何编写一个 Chefspec 测试来处理要根据属性创建的目录数组?
感谢您的帮助。
最佳答案
你也可以这样做
%w(/mnt/directory1 /mnt/directory2).each do |dir|
expect(chef_run).to create_directory(dir)
end
更新:抱歉,我有更多的经验,现在我可以给你一个更好的答案。
是的,上面的方法有效,但如果你真的想让它变得更好,就这样做......
my_directories = %w(/test/1 /other_test/2)
let(chef_run) do
ChefSpec::SoloRunner.new do |node|
node.default["cookbook"]["directory"] = my_directories
end.converge(described_recipe)
end
my_directories.each do |dir|
expect(chef_run).to create_directory(dir)
end
这将允许您将目录列表和测试一起保存在一个文件中。如果您的 attributes.rb
中的列表发生变化,它不会中断测试。它还允许您为测试目录使用完全虚拟的名称,我发现这很有用。
关于ruby - 带有循环的 Chefspec 测试资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26825154/
如何在满足最低内核版本 2.6.20 或更高版本的 Linux 系统上编写以下文件中的测试? spec/unit.recipes/default_spec.rb 最佳答案 ChefSpec 不用于此类
我目前正在编写一个 chefspec 配方,它设置某些节点属性,这是完成我的单元测试所必需的。我目前在每次测试中都设置这些属性,这看起来很浪费。我希望以不重复代码的方式执行此操作,即“全局属性?”。
我创建了一个 Chef 资源,它“扩展”了 Chef 的部署资源。基本思想是检查文件 deploy/crontab 是否存在类似于机制 deploy/after_restart.rb在要部署的源中,并
我正在调查 ChefSpec 是否报告 (有覆盖)和测试厨房报告 可以生成为 junit 格式,因此它们可以被 Jenkins 解析然后发布结果。 或者,如果有其他一些友好的方式,Jenkins 可以
我对 nginx Recipe 做了一个简单的测试: require 'spec_helper' describe 'my_cookbook::nginx' do let(:chef_run) d
如果我有一个具有以下属性的 Chef Recipe node.default["cookbook"]["directory"] = %w(/mnt/directory1 /mnt/directory2
我的 Recipe 中有以下模板文件创建: template "my_file" do path "my_path" source "my_file.erb" owner "root"
我已经为安装 Jenkins CI 制作了一本说明书。它使用 yum Recipe 中的 key 和 repository 资源,所以我最终得到以下配方: yum_key "RPM-GPG-KEY-j
我开始使用 Chefspec 进行测试,我认为这是一个非常简单可靠的测试框架。但我在方舟资源测试方面遇到了一些问题。我有这个 default_spec.rb require 'chefspec' re
我正在关注 this basic tutorial看起来这些测试应该最多在 2 秒内运行,但我得到 41 秒 5 次测试。 我用 --profile 运行了 ChefSpec,这就是结果 Top 8
我是 Ruby 的新手,但过去两周我一直在对 Chef 测试进行大量研究。该测试使用 ChefSpec 和 Fauxhai,但它看起来不是很“像 ruby ”,我希望社区能给我一些编码风格的建议。有没
我正在尝试运行我的 ChefSpec 测试。 这是我的 ChefSpec 测试: require_relative '../spec_helper' describe 'my-demo::basesy
我有一个需要清理的 Chef 存储库。配置数据分散在节点、环境和角色文件夹中的文件中。 我的想法是使用ChefSpec在重组数据期间测试回归。由于 ChefSpec 似乎只直接支持角色,我如何在 Ch
我正在使用 Test-Kitchen 进行 Recipe 测试我用 serverspec 执行,使用 busser-serverspec。但我想尝试使用 Chefscpec 进行一些测试,但如果我使用
我们的说明书在 Linux 和 Windows 机器上都使用,当它运行/收敛时,代码在两种类型的系统上都能完美运行。然而耙架 在 Linux 上测试失败。在我的食谱中,我有: service 'MyS
在尝试编写 chefspec 测试时,按照 chefspec 自述文件 (https://github.com/acrmp/chefspec) 中的示例,我收到以下错误。我尝试将“depends 'c
我有一本带图书馆的 Chef Recipe ,例如库.rb。它包含一个 CONSTANT: CONSTANT = 'constant' 当我为这本 Recipe 编写单元测试时,它总是给我警告: (S
我正在尝试使用 ChefSpec 测试角色.我宁愿不使用 Chef Zero (通过要求 'chefspec/server')只是因为它的运行速度比 ChefSpec 本身慢一点。 也许我读错了文档,
在过去的几周里,我一直在编写 ChefSpec 单元测试套件,并设法用它做了很多事情,但我发现了一个让我难过的场景。我有一个 Recipe ,其中包含“aws” Recipe 的默认 Recipe ,
我是一名优秀的程序员,十分优秀!