tr33m4n / codeception-module-percy
Percy https://percy.io 为 Codeception 的模块
Requires
- php: ^7.4||^8.0
- composer-plugin-api: ^2
- composer-runtime-api: ^2
- ext-curl: *
- ext-json: *
- codeception/codeception: ^4.1.22||^5.0
- codeception/module-webdriver: ^2.0||^3.0||^4.0
- eloquent/composer-npm-bridge: ^5.0
- guzzlehttp/guzzle: >=6.5.8
- ramsey/uuid: ^4.1
- symfony/process: ^5.2||^6.0||^7.0
- tr33m4n/codeception-module-percy-environment: ^1.0
Requires (Dev)
- adamwojs/php-cs-fixer-phpdoc-force-fqcn: ^2.0
- codeception/module-asserts: ^2.0
- codeception/module-phpbrowser: ^2.0
- friendsofphp/php-cs-fixer: ^3.59
- phpstan/phpstan: ^1.11
- rector/rector: ^1.1
- squizlabs/php_codesniffer: ^3.10
- dev-master
- v5.0.10
- v5.0.9
- v5.0.8
- v5.0.7
- v5.0.6
- v5.0.5
- v5.0.4
- v5.0.3
- v5.0.2
- v5.0.1
- v5.0.0
- v4.4.2
- v4.4.1
- v4.4.0
- v4.3.0
- v4.2.4
- v4.2.3
- v4.2.2
- v4.2.1
- v4.2.0
- v4.1.0
- v4.0.2
- v4.0.1
- v4.0.0
- v3.1.0
- v3.0.0
- v2.x-dev
- v2.0.2
- v2.0.1
- v2.0.0
- v1.x-dev
- v1.1.1
- v1.1.0
- v1.0.1
- v1.0.0
- v0.1.5
- v0.1.4
- v0.1.3
- v0.1.2
- v0.1.0
- dev-dependabot/composer/codeception/module-asserts-tw-3.0
- dev-dependabot/composer/codeception/module-phpbrowser-tw-3.0
- dev-feature/dep-maintenance
- dev-fix/node-issues-on-less-than-16
This package is auto-updated.
Last update: 2024-09-10 01:55:40 UTC
README
codeception-module-percy
Percy https://percy.io 为 Codeception 模块
需求
- Node.js
>=14.0.0 - PHP
>= 7.4 - Composer
v2
安装
composer require --dev tr33m4n/codeception-module-percy
示例配置
以下示例 acceptance.suite.yml 配置假定 WebDriver 模块已正确配置,以适应您的测试套件,并显示启用 Percy 模块以及设置一些基本配置
modules: enabled: - WebDriver - Percy config: Percy: snapshotConfig: widths: - 1024 - 768 - 320 minHeight: 1080
以下示例展示了如何在 codeception.yml 文件中配置 percy:process-snapshots
extensions: commands: - Codeception\Module\Percy\Command\ProcessSnapshots
配置选项
运行
Percy 集成会自动与测试套件一起运行,但需要您的 PERCY_TOKEN 设置为成功发送快照。更多信息请参阅 https://docs.percy.io/docs/environment-variables#section-required
覆盖 node 路径
默认情况下,将使用运行测试套件的用户的 PATH 中定义的 node 可执行文件。但是,可以通过设置环境变量 PERCY_NODE_PATH 为您首选的位置来覆盖它。
仅收集
在某些高级 CI 设置中,可能需要收集具有不同参数的多次运行的全部快照,然后在所有运行完成后一次性发送。这可以通过将 collectOnly 配置设置为 true 来实现。所有运行完成后,运行命令 vendor/bin/codecept percy:process-snapshots 将迭代所有收集到的快照,发送到 Percy,然后清理快照文件夹。需要在 codeception.yml 文件中配置 percy:process-snapshots 命令,请参阅“示例配置”部分
示例测试
<?php class FirstCest { public function frontpageWorks(AcceptanceTester $I) { $I->amOnPage('/'); $I->takeAPercySnapshot('My snapshot name'); } }
$I->takeAPercySnapshot 可以传递一个数组作为额外的参数,以覆盖全局设置的 percyCSS、minHeight、enableJavaScript 和 widths,例如
use Codeception\Module\Percy\Snapshot; $I->takeAPercySnapshot('My snapshot name', [ Snapshot::WIDTHS => [1024, 768, 320], // Browser breakpoint widths Snapshot::MIN_HEIGHT => 1080, // Minimum height of the resulting snapshot Snapshot::PERCY_CSS => 'iframe { display: none; }', // Percy specific CSS Snapshot::ENABLE_JAVASCRIPT => true // Enable/disable JavaScript ]);