使用 Spectron、Mocha 和 Chai 为 Electron 编写自动化测试

主要观点:介绍如何使用MochaChaiSpectron测试基于 Electron 的桌面应用,包括设置测试环境、运行自动化集成或端到端测试,以及介绍 CSS 选择器。
关键信息:

  • Electron 可基于同一代码库编写跨平台应用,使用 HTML、CSS 和 JavaScript 开发,用electron-packagerelectron-builder打包。
  • Mocha 是在Node.js上运行的 JavaScript 测试框架,可与 Chai 结合使用,Chai 是 Node.js 的 BDD/TDD 断言库,Chai as Promised 可用于断言关于 promises 的事实。
  • Spectron 是用于 Electron 的自动化集成和端到端测试的开源框架,可通过 npm 安装,如npm install --save-dev spectron等。
  • 可设置 Mocha 测试运行器,通过"test": "mocha"等命令执行测试,还可设置特定的测试运行条件,如"test:all""test:one"
  • 设置 Spectron 时需指定 electron 批处理文件路径和 dist 文件夹路径等,如initialiseSpectron函数中的设置。
  • 编写自动化测试时,可使用 Mocha 和 Chai,通过describeit定义测试用例,利用 life cycle hooks 进行初始化和清理操作,如beforeafter,还可使用 CSS 选择器模拟动作和选择元素,如clickelement等。
    重要细节:
  • 环境设置中需安装相关依赖,如@types/mochaelectron-chromedrivermochaspectron等,并在package.json中配置。
  • 在测试中可通过chai.should()等方式使用不同的断言风格。
  • CSS 选择器的参考页面为[https://www.w3schools.com/css...]和[https://saucelabs.com/resourc...]。
  • 可在[http://www.matthiassommer.it/...]找到完整的测试类和演示自动化测试的视频。
阅读 37
0 条评论