我想向我正在维护的(Backbone.js)应用程序添加集成测试,并考虑哪种策略更可取以及每种策略的优点和缺点:
- 在客户端运行测试,例如 jasmine-jquery 。理想情况下,我想要类似 ember test helpers 的东西它允许编写简单的同步代码(实际上运行异步)。
- 使用 selenium 驱动程序在服务器端运行测试,例如 Nightwatch.js .
很难判断哪种方法有更多的社区和工具,以及哪些项目更成熟。此外,我感觉在客户端运行测试可能会更好地隔离测试,而在服务器端运行可能会创建运行时间更长、更重的测试(也为了维护?),但允许模拟更复杂的真实测试用户场景
如有任何想法,我们将不胜感激
最佳答案
如果您关心浏览器兼容性,那么您需要在不同平台上的不同浏览器上运行端到端测试,可能使用 cloud-based cross-browser testing service例如 SauceLabs、BrowserStack、TestingBot 或 CrossBrowserTesting。
由于您使用的是 Backbone 并且熟悉 JavaScript,因此您可能需要为 Selenium WebDriver 选择 JavaScript 客户端。有quite a few choices ,其中实习生遥遥领先。
关于javascript - jasmine-jquery 与 selenium 驱动程序(如 Nightwatch.js) - 何时选择其中每一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30593675/