0
你好:我一直停留在這個測試使用水豚了一些日子,現在並不能制定出一個解決方案。 有一些DOM修改使用AJAX,長話短說被執行以:水豚不渲染.js.erb
1)我的AJAX事件成功地觸發請求:
$.ajax({ url: 'nice_url', data: data, complete: function() {debugger}
});
2)控制器接收該請求就好:
def update_dom
<other stuff>
respond_to do |format|
format.js
end
end
3)要點:該文件update_dom.js.erb在DEV環境而不是在使用水豚+ RSpec的測試正確呈現。
update_dom.js.erb:
debugger; //first line, breakopint no stopp in Test
<% unless %W(boolean datetime).include?(@operators[:type])%>
$.each($('.values'), function(i, valueField){
<other stuff, etc...>
這實際上是整個問題,會明白它
你實際使用JavaScript的驅動程序來運行這個特殊的水豚測試?如果沒有這個,將不會觸發JavaScript。基本的,但只是可以肯定! – TomD
嗨,@TomD:感謝您的評論。我想你是指在我的測試中有'js:true'選項,是的。 – LegaTux
可以編輯您的文章,包括您的rails_helper.rb和你的規範的代碼? 此外,想到它,調試器JS聲明停止與調試工具JS啓用,搞不清那些有在自動化測試。你可以嘗試在js.erb中將調試器更改爲類似於<%raise「錯誤」%>並查看它是否在dev和test中實際出錯? – TomD