使用editablegrid.net。真的很喜欢布局和功能。 唯一的问题是功能测试。 似乎没有任何东西在水豚中工作 - 页面快照不显示实际网格的页面内容,匹配器不会看到以js呈现的内容。
我必须使用较旧的幻像(v1.9.2)作为对水豚的支持似乎在mac os x上没有。
任何人都有运气功能测试吗?
尝试过的事情
设置详情
版本
/dir1
更新 更新版本
rails 4.1.0
capybara (2.9.1)
rspec (3.5.0)
phantomjs 192
selenium-webdriver (2.53.4)
poltergeist (1.5.1)
capybara (~> 2.1)
cliver (~> 0.3.1)
multi_json (~> 1.0)
websocket-driver (>= 0.2.0)
$ phantomjs -v
1.9.2
然而,当我做一个简单的测试时
$ phantomjs -v
2.1.1
$ gem list | grep polter
poltergeist (1.10.0)
$ selenium-webdriver (2.53.4)
此页面包含可在开发中正常工作的 visit 'address_books/'+user.address_book.id.to_s
page.save_screenshot("file1.png", :full => true)
sleep 4.seconds # just in case the delayed redraw takes time
page.save_screenshot("file2.png", :full => true)
expect(page).to have_content(/Person A.*2 8888 9999.*home/)
(请参阅屏幕截图(http://imgbox.com/rqwx1vHe))示例不会在保存屏幕截图中呈现(http://imgbox.com/t1CG6hQa)
其他说明
网格代码
editablegrid
更新2
var editableGrid = null;
$(document).on('turbolinks:load', function() {
editableGrid = new EditableGrid("AddressBookGridJSON");
editableGrid.tableLoaded = function() { this.renderGrid("tablecontent", "testgrid"); };
editableGrid.loadJSON('/address_books.json');
// $.getJSON('/address_books.json', function(json) {
// editableGrid.load({"metadata": json.metadata, "data": json.data});
// console.log(editableGrid);
// });
});
index.json.jbuilder
更新3
已加载数据库清洁程序代码
要求'database_cleaner' RSpec.configure do | config | config.before(:each)做 DatabaseCleaner.clean_with(:截断) 端
json.set! :metadata do
json.array! @address_book.generate_view_table_meta_data
end
json.set! :data do
json.array! @contacts do |contact|
json.id contact.id
json.set! :values do
json.name contact.name
json.phone_number contact.get_presentation_number
json.phone_type contact.get_humanize_phone_type
json.action contact.get_url_to_view_delete
end
end
end