You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Codeception WebDriver模块url参数失效 始终连接localhost问题求助

Codeception WebDriver模块配置url不生效问题解决方案

核心原因

你混淆了WebDriver模块两个作用完全独立的配置参数:url 根本不负责指定WebDriver服务的连接地址,修改该参数自然不会影响WebDriver的服务连接逻辑。

参数作用区分

  • url:你要测试的PHP应用的根访问地址,仅用于告知WebDriver控制浏览器打开目标站点时使用,和WebDriver服务本身的连接地址无关
  • host:ChromeDriver/GeckoDriver/Selenium等WebDriver服务的监听IP/域名,默认值为127.0.0.1,未主动配置时就会一直尝试连接本地服务

解决方法

在WebDriver的配置块中新增host参数,填写你的WebDriver服务实际运行的地址即可,修正后的配置示例如下:

class_name: AcceptanceTester
modules:
    enabled:
        - WebDriver:
            url: "http://myserver" # 保留原测试站点地址配置
            host: "myserver" # 新增该行,填写WebDriver服务的实际监听地址
            window_size: false # disabled in ChromeDriver
            port: 9515
            browser: chrome
            capabilities:
                chromeOptions:
                    args: ["--headless", "--disable-gpu"] # Run Chrome in headless mode
                    prefs:
                        download.default_directory: "/tmp"
        - Yii2:
            part: orm
            entryScript: index-test.php
            cleanup: false

验证操作

  1. 检查配置文件中是否存在env环境配置块,确认对应环境下没有覆盖host参数为127.0.0.1
  2. 确认WebDriver服务启动时没有仅绑定本地回环地址,以ChromeDriver为例,启动时可添加参数 --allowed-ips='*' 放开访问限制,避免跨设备连接被拒绝
  3. 修改配置后执行 codecept build 重新生成AcceptanceTester类,确保新配置完全加载
  4. 重新执行测试命令验证连接是否正常

内容的提问来源于stack exchange,提问作者The Bndr

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 05:48:05