jakubtobiasz / mink-panther-driver
Mink框架的Symfony Panther驱动程序
dev-main / 1.1.x-dev
2023-12-06 17:16 UTC
Requires
- php: >=7.2
- ext-dom: *
- behat/mink: ~1.8
- symfony/panther: ~0.7|~1.0|~2.0
Requires (Dev)
- dbrekelmans/bdi: ^1.0
- mink/driver-testsuite: dev-master
- phpunit/phpunit: ~8.5|~9.3
- symfony/dom-crawler: ~4.0|~5.0|~6.0
- symfony/http-kernel: ~4.0|~5.0|~6.0
Suggests
- ext-gd: *
This package is auto-updated.
Last update: 2024-08-30 01:44:01 UTC
README
Mink框架的Symfony Panther驱动程序
安装
composer require --dev robertfausk/mink-panther-driver
使用示例
<?php use Behat\Mink\Mink; use Behat\Mink\Session; use Behat\Mink\Driver\PantherDriver; use Symfony\Component\Panther\PantherTestCase; // These are the same options passed as in PantherTestCaseTrait::createPantherClient client constructor. protected static $defaultOptions = [ 'webServerDir' => __DIR__.'/../../../../public', // the Flex directory structure 'hostname' => '127.0.0.1', 'port' => 9080, 'router' => '', 'external_base_uri' => null, 'readinessPath' => '', 'browser' => PantherTestCase::CHROME, ]; $kernelOptions = []; # unused cause we do not extend class KernelTestCase $managerOptions = []; $mink = new Mink(array( 'panther' => new Session(new PantherDriver($defaultOptions, $kernelOptions, $managerOptions)), )); $mink->getSession('panther')->getPage()->findLink('Chat')->click();
请参考MinkExtension-example以获取可执行的示例。
文档
由于MinkPantherDriver只是Mink和Symfony Panther之间的粘合剂,因此它已经拥有详尽的文档
- 关于
Mink
,请阅读Mink的文档。 - 关于
symfony/panther
,请阅读Panther的文档。 - 关于与
Behat
一起使用,请阅读Behat的文档,并尝试robertfausk/behat-panther-extension。
如何升级?
请查看CHANGELOG以获取详细信息。
如何贡献?
使用php web驱动程序启动docker-compose,可以使用php7.2、php7.3、php7.4、php8.0、php8.1或php8.2中的一种预配置的docker设置。
docker-compose up php8.2
运行phpunit测试
docker-compose exec php8.2 vendor/bin/phpunit
如果您遇到类型为session not created: This version of ChromeDriver only supports Chrome version 79
的问题,那么这是由于安装的chrome驱动程序和chromium版本不匹配造成的。最好的解决方案是更新它们到最新版本。
docker-compose exec php8.2 vendor/bin/bdi detect drivers
致谢
由Robert Freigang创建 robertfausk。
MinkPantherDriver建立在Panther之上,并与Behat和Mink一起使用。它受到了MinkBrowserKitDriver和MinkSelenium2Driver的启发。