原因我可以使用selenium-standalone和xpath来测试应用。但测试SPA可能会在某个时候发生挑战。
但是,例如 angularjs的团队为此目的提供protractor。
我可以看到量角器背后的原因是量角器等到angularjs将加载并且还有更多的功能:
量角器提供了一些新的定位器策略和功能 非常有助于自动化AngularJS应用程序。例子 包括诸如:waitForAngular,By.binding,By.repeater, By.textarea,By.model,WebElement.all,WebElement.evaluate等。
所以,问题是:它是否是Vuejs中e2e测试的任何工具或最佳实践?
UPD:随时发布指向教程的链接,示例以及关于vue.js中e2e-testing的一切。感谢。
答案 0 :(得分:23)
您正在考虑的工具是Nightwatch。 有了这个,您可以使用Vue.js进行E2E测试。
更好的是,当您使用vue-cli
准备好运行时,默认情况下会捆绑它。
默认情况下,使用Nightwatch创建项目的命令行为vue init webpack myProjectName
。
编辑:最近我经常使用Webdriver.io,我必须说我更喜欢Nightwatch(更好的文档,有活力的gitter的反应式社区,及时处理的问题等等)
答案 1 :(得分:17)
我建议使用https://devexpress.github.io/testcafe。
优点:
请参阅简单教程here
答案 2 :(得分:6)
我建议Cypress。
我们的文档很棒:https://on.cypress.io/intro
对于Vue,请参阅本教程:https://vuejsdevelopers.com/2018/01/29/vue-js-e2e-test-hacker-news/以及是否要对Vue组件进行单元测试https://github.com/bahmutov/cypress-vue-unit-test
快乐的测试。
答案 3 :(得分:1)
似乎是一个老问题,但在2019年底,最好的方法是 webdriverio :
专家:
大型的插件和集成生态系统。
摩卡,黄瓜,茉莉花赛跑者。
测试运行器的同步模式。
开箱即用地吸引记者和其他人。
框中的Chromedriver服务。
轻松与selenoid集成,并在docker中获取浏览器群集以并行执行测试。
与devtools协议和puppeteer集成,可以使用大量功能。
与云服务提供商集成。
Appium集成开箱即用。
缺点:
必须手动编写等待。
某些功能需要使用promises。