这是一个很正常的非建设性问题。我已经对其进行了编辑并将问题分开以便更好地理解。
1.你有codeceptjs,它只是一个包装器,它需要一个像nightmarejs/selenium这样的框架。
这不是一个问题,而是一个声明,表明他对此进行了研究。没什么大不了的。
2. 现在噩梦是一个框架吗?
Nightmare 不是一个框架。repo 上的副标题说它是一个高级浏览器自动化库。目标是通过 API 公开一些模仿用户操作(如 goto、type 和 click)的简单方法。它最初是为跨没有 API 的站点自动执行任务而设计的,但最常用于 UI 测试和爬网。
库和框架之间差异的真正简短版本是,库是你可以控制的地方,你可以选择和使用你想要的东西,而框架是框架可以控制的地方,一切都已经被他们和你选择了只会在它们之上添加一些数据。更多关于这个答案的差异。
3.什么是electronjs?
Electron 是一个在其底层使用节点和铬的框架。它允许您使用 JavaScript、HTML 和 CSS 编写跨平台的桌面应用程序。它基于 Node.js 和 Chromium,由 Atom 编辑器和许多其他应用程序使用。
4.electronjs和phantomjs有什么区别?哪一个是无头浏览器?
PhantomJS 是一个可使用 JavaScript API 编写脚本的无头浏览器。它比电子更能与铬相媲美。Electron 是一个使用另一个名为 chromium 的无头浏览器的框架,而 phantomjs 本身是一个无头浏览器。
5. 茉莉花/摩卡适合哪里?茉莉花/摩卡咖啡可以与 codeceptjs 相媲美吗?
Jasemin/Mocha/Ava/Jest 等都是单元测试框架。与 Nightmare/PhantomJS 一起,您可以创建脚本来为您测试各种 ui/ux 交互。
Codeceptjs 是一个使用 webdriver(或其他)进行端到端测试的测试框架。
要了解单元测试和集成/端到端测试之间的区别,请查看此答案。
我希望这能消除许多疑虑。