javascript - 如何测试我的 selenium/jquery/AJAX 项目?

标签 javascript jquery ajax rspec tdd

我正在使用 ruby​​/sinatra 开发一个小型 webapp 项目。它正在显示一个仪表板,该仪表板使用对应用程序的 REST API 部分的 AJAX 调用定期加载其数据。 (基本上 json 结果被转换为页面上的一些 HTML。)

我正在使用 RSPec 测试插入 REST API 和 HTML 的开发,但是当我开始使用 AJAX 调用时,我无法使用 TDD。

那么,如何测试我的 javascript/AJAX 调用的结果?我想检查生成的 HTML。

我想避免将 Selenium 与浏览器一起使用,以尽可能保持项目的轻量级。

干杯 亚历克斯

最佳答案

MockJax库(例如)将允许您将 TDD 用于您的 javascript 和 jQuery 代码。它将使您能够模拟 AJAX 调用,从而允许您单独测试客户端组件。

至于测试 AJAX 调用的结果,您可以使用 Capybara测试框架;除了支持 Selenium(你想避免),它还支持 headless 网络驱动程序 Capybara-webkit 应该比 Selenium“更轻”,因为它不会加载整个浏览器。

关于javascript - 如何测试我的 selenium/jquery/AJAX 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20304413/

相关文章:

javascript - addClass 不会在多个元素上同时发生

javascript - Jquery - 延迟搜索直到输入完成

javascript - evt.target 始终返回输入列表的第一个输入

javascript - res.render() 和 res.redirect() 的行为类似于 res.send()

javascript - 卸载/重新加载 javascript 或针对大量 ajax 内容的更好解决方案?

javascript - 如何通过 Javascript 从 API URL 调用对象中的数组

JavaScript atob 与 Notepad++ Base64 解码不同

javascript - 直接对数据库操作执行等待将给出未定义的结果

javascript - 选项卡关闭时 anchor 跳转链接不起作用

javascript - Backbone Handlebars 变量返回 0(零)