agalmar/chromiuman

Codeception 扩展,用于在运行测试时自动启动和停止 Chromedriver。

1.6.0 2022-10-04 11:53 UTC

This package is auto-updated.

Last update: 2024-09-04 16:04:30 UTC


README

Latest Version Software License Total Downloads

Codeception 扩展,用于在运行测试时自动启动和停止 Chromedriver

最低要求

  • Codeception 2.2.7
  • PHP 5.4

使用 Composer 安装

$ composer require agalmar/chromiuman

请确保在 codeception.yml 中启用扩展,如下面的 配置 所示。

推荐的附加包

通过 Composer 安装 Chromedriver

强烈建议您使用 Chromedriver Installer 包,该包会将 Chromedriver 本地安装到您的项目的 vendor/bin 目录中。请按照提供的 安装说明 进行操作。

Chromiuman 默认使用 vendor/bin/chromedriver。如果您使用其他 Chromedriver 安装,请按照以下配置设置路径。

配置

默认情况下,Chromiuman 将使用路径 vendor/bin/chromedriver 和端口 9515

启用和配置可以在 codeception.yml 或您的套件配置文件中完成。

使用默认设置启用 Chromedriver

extensions:
    enabled:
        - Codeception\Extension\Chromiuman

使用备用设置启用 Chromiuman

extensions:
    enabled:
        - Codeception\Extension\Chromiuman
    config:
        Codeception\Extension\Chromiuman:
            path: '/usr/bin/chromedriver'
            port: 9515
            suites: ['acceptance']

在验收套件中启用 Chromiuman(除了在 ci 环境中)

extensions:
  enabled:
    - Codeception\Extension\Chromiuman:
        suites: ['acceptance']
env:
  ci:
    extensions:
      enabled:
        - Codeception\Extension\Chromiuman:
            suites: []

可用选项

Chromiuman 配置中设置的选项映射到 Chromedriver 选项。以下列出了当前支持选项。

  • path: {path}
    • Chromedriver 二进制文件的完整路径。
    • 默认值: vendor/bin/chromedriver
  • port: {port}
    • 启动 chromedriver 时的 WebDriver 端口
    • 默认值: 9515
  • adb_port: {port}
    • Adb 服务器端口
  • log_path: {FILE}
    • 将服务器日志写入文件而不是 stderr,将日志级别提高到 INFO
  • log_level: {LEVEL}
    • 设置日志级别:ALL, DEBUG, INFO, WARNING, SEVERE, OFF
  • debug: {true|false}
    • 在 Chromedriver 运行时显示调试输出(详细记录日志,相当于 log-level: {ALL}
    • 默认值: false
  • silent: {true|false}
    • 不记录任何日志(相当于 log-level: {OFF}
    • 默认值: false
  • append_log: {true|false}
    • 追加日志文件而不是重新写入
    • 默认值: false
  • url_base: {base URL}
    • 命令的基本 URL 路径前缀,例如 wd/url
    • 默认值: wd/url
  • replayable: {true|false}
    • (实验性) 详细记录日志且不截断长字符串,以便可以回放日志
  • enable_chrome_logs: {true|false}
    • 显示来自浏览器的日志(覆盖其他日志选项)
  • allowed_ips: {CS-IP_List}
    • 允许连接到 ChromeDriver 的远程 IP 地址的逗号分隔允许列表
  • allowed_origins: {CS-Request_Origin_List}
    • 允许连接到 ChromeDriver 的请求源逗号分隔允许列表。使用 * 允许任何主机源是危险的!
  • disable_dev_shm_usage: {true|false}
    • 不要使用 /dev/shm(如果看到与共享内存相关的错误,请添加此开关)
    • 默认值: false
  • readable_timestamp: {true|false}
    • 添加可读时间戳到日志
    • 默认值: false
  • 套件:{数组|字符串}
    • 如果省略,则为所有套件启动Chromedriver
    • 指定套件数组或单个套件名称

用法

安装并启用后,使用php codecept run运行测试将自动启动Chromedriver服务器,并在继续测试之前等待其可访问。

Starting Chromedriver.
Waiting for Chromedriver to be reachable..
Chromedriver now accessible.

测试完成后,Chromedriver将被关闭。

Stopping Chromedriver.