我想用chefspec來測試我的配方的冪等性。如何用chefspec測試冪等性
比方說,我有一個食譜,包括這兩個資源語句:
file '/etc/app.config' do
action :create
notifies :restart, "service[app]"
end
service 'app' do
action :enable
end
我如何寫就足以證明chefspec例如,給定/etc/app.config
已經存在的文件,那麼app
服務將不是通知重啓?
是否有一些嘲笑我可以這樣做'文件'資源認爲文件已經存在?我可以運行ChefSpec :: ServerRunner兩次,保持第一次運行狀態(我假設沒有,因爲該文件沒有真正創建)?或者我是否會被迫使用測試廚房和流浪漢來讓realz發生?
(注:我的實際食譜有構建配置文件的自定義LWRP它從一個廚師的服務器,這就是爲什麼我使用ServerRunner資訊)
鑑於ChefSpec從未試圖收斂您的資源,我相當肯定您無法測試ChefSpec的冪等性。它基本上可以確保您使用正確的操作和屬性來聲明適當的資源,但並不真正測試這些資源是否正常工作。但我希望有人能證明我的錯誤。 –
@TejayCardon,你說得對,我們無法在完全銜接的層面上測試冪等性(用chefspec)。不過,我至少希望能夠測試單個資源的不同起始條件。不幸的是,它看起來不現實。我想,我必須用測試廚房來測試它。 – Kief