我有一个Symfony2项目,但我无法正确配置WebDriver。 我已经用composer安装了facebook webdriver和codeception:
的Facebook / webdriver的: 版本:* 1.1.3
codeception / codeception: 版本:* 2.2.5
我遵循了这些说明(当自动加载失败时,许多其他来源没有成功): http://codeception.com/11-20-2013/webdriver-tests-with-codeception.html
项目根目录中的codeception.yml:
actor: Tester
paths:
tests: tests
log: tests/_output
data: tests/_data
support: tests/_support
envs: tests/_envs
settings:
bootstrap: _bootstrap.php
colors: true
memory_limit: 1024M
extensions:
enabled:
- Codeception\Extension\RunFailed
- WebDriver
config:
WebDriver:
url: 'http://localhost/'
browser: firefox
port: 4444
modules:
config:
Db:
dsn: ''
user: ''
password: ''
dump: tests/_data/dump.sql
我生成了验收测试,当我运行codeception时,会发生以下错误:
[Codeception\Exception\ConfigurationException]
Class `WebDriver` is not defined. Autoload it or include into '_bootstrap.php' file of 'tests' directory
我已经尝试将其添加到tests / _bootstrap.php中:
require_once __DIR__.'/../vendor/codeception/codeception/src/Codeception/Module/WebDriver.php';
上面的路径是正确的,找到了php文件,但问题仍然存在。 究竟应该如何进行自动加载或引导程序?
编辑: 我将WebDriver启用并配置为tests / acceptance.suite.yml而不是根文件夹codeception.yml,并克服了这个问题。
目前还不清楚为什么会这样?
答案 0 :(得分:2)
WebDriver不是扩展,而是模块。
您必须在modules
文件的acceptance.suite.yml
部分启用它。
modules:
enabled:
- WebDriver
- \Helper\Acceptance
https://github.com/Codeception/Codeception/blob/2.2/tests/web.suite.yml