uuf6429/mink-electron-driver

该包已废弃,不再维护。未建议替代包。

Mink Electron 驱动程序

1.3.0 2018-02-03 13:29 UTC

README

Build Status (Linux / TravisCI) Build Status (Windows / AppVeyor) Minimum PHP Version License Coverage Packagist Dependency Status

Mink Electron 驱动程序(用 Electron 替代 JsonWireProtocolPhantomJS

Electron 的速度比 PhantomJS 快 2 到 3 倍(来源)。

目录

功能和优势

  • 功能齐全的网页浏览器
  • 相对于替代品,速度相当快
  • 使用现代组件构建
  • 良好的支持(Electron 接收频繁更新)
  • 易于理解的代码库(PHP 或 JS)
  • 经过良好测试(除了 Mink 驱动程序测试外,还有其他测试)

要求

有一些事情取决于您的系统是否自动处理。

  • 基本要求
    • PHP(5.5+)和 Composer
    • Node.js(4+)和 npm
  • Linux
  • Windows

安装

首先确保满足上述 要求

接下来,只需通过 Composer 在 Behat 项目中安装驱动程序即可

composer require uuf6429/mink-electron-driver

它是如何工作的?

       PHP + Mink Driver Interface                    Node.js + Electron API
 ________________  |  ______________________     _____________  |  _______________ 
|  Behat + Mink  |_v_|       Client         |___|    Server   |_V_|   Electron    |
| (Your Project) |---| (ElectronDriver.php) |---| (Server.js) |---| (Web Browser) |
'----------------'   '----------------------' ^ '-------------'   '---------------'
                                              |
                      DNode comm. over UDS (with inet sockets fallback)

由于无法轻易从 PHP 控制 Node.js,因此采用了客户端-服务器方法,使用快速轻量级的传输协议(Unix 域套接字)(dnode)。

PHP 端的驱动程序只需告诉服务器要做什么,并控制 Electron 网页浏览器。

采用客户端-服务器方法的主要原因是 Mink 是同步的。