在Vue.js中进行端到端(e2e)测试的正确方法是什么

我可以将selenium-standalone与xpath一起使用来测试应用程序。但是测试SPA有时可能会充满挑战。

但是,例如,angularjs的团队为此目的提供了量角器

如我所见,量角器背后的原因是量角器要等到angularjs将被加载以及更多其他功能:

量角器提供了一些新的定位器策略和功能,这些对自动使AngularJS应用程序非常有帮助。例子包括:waitForAngular,By.binding,By.repeater,By.textarea,By.model,WebElement.all,WebElement.evaluate等。

因此,问题是:在Vuejs中进行e2e测试是否有任何工具或最佳实践?

UPD:随时发布指向教程,示例的链接,以及在vue.js中进行e2e测试的所有精彩内容。谢谢。

LEY古一阿飞2020/03/11 17:22:38

我推荐赛普拉斯

  • 单个NPM依赖性
  • 开箱即用的视频录制
  • 显示测试每个步骤的GUI。

我们的文档很棒: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

测试愉快。

乐猪猪2020/03/11 17:22:38

似乎是一个老问题了,但是在2019年底,最好的方法是webdriverio

优点

  1. 大型的插件和集成生态系统。

  2. 摩卡,黄瓜,茉莉花赛跑者。

  3. 测试运行器的同步模式。

  4. 吸引记者和其他人的东西。

  5. 包装盒中的Chromedriver服务。

  6. 轻松与selenoid集成,并在docker中获取浏览器群集以并行执行测试。

  7. 与devtools协议和puppeteer集成,可以使用大量功能。

  8. 与云服务提供商集成。

  9. 开箱即用的Appium集成。

缺点

  1. 必须手动编写等待。

  2. 某些功能需要使用Promise。

樱Mandy2020/03/11 17:22:38

我建议使用https://devexpress.github.io/testcafe

优点:

  • 易于安装
  • 完整的测试工具
  • 带有(async / await)的javascript ES2016
  • 灵活的选择器系统
  • 重试策略的智能断言
  • 报告

这里查看简单的教程

村村小小十三2020/03/11 17:22:38

您正在考虑的工具是Nightwatch这样,您就可以使用Vue.js进行E2E测试。

更好的是,当您使用时vue-cli默认情况下它将捆绑在一起,以准备运行。

用于创建默认情况下激活Nightwatch的项目的命令行是vue init webpack myProjectName

这是关于它的 教程

编辑:最近我经常使用Webdriver.io,我必须说我比Nightwatch更喜欢它(更好的文档,反应活泼的社区,及时解决问题,等等)。