Codeception:[RuntimeException]调用未定义的方法AcceptanceTester::wait

Codeception: [RuntimeException] Call to undefined method AcceptanceTester::wait

我正在使用 Codeception 进行第一次验收测试。

当我 运行 使用 wait()waitForElement() 进行测试时,我收到此消息:

[RuntimeException] Call to undefined method AcceptanceTester::wait  

这是我的acceptance.yml

# Codeception Test Suite Configuration
#
# Suite for acceptance tests.
# Perform tests in browser using the WebDriver or PhpBrowser.
# If you need both WebDriver and PHPBrowser tests - create a separate     suite.

class_name: WebGuy
modules:
enabled:
    - WebDriver
    - \Helper\Acceptance
config:
    WebDriver:
        url: 'http://rh.dev'
        browser: 'firefox'

这是我的测试:

$I = new AcceptanceTester($scenario);
$I->wantTo('Register my profile for the first time');
$I->amOnPage('/register');
$I->fillField('name', $person->name);
$I->wait(3); // secs
$I->fillField('lastName', $person->lastName);

我从 official doc

那里得到的

我还确保执行:

vendor/bin/codecept build

有什么问题?

class_name: WebGuy更改为class_name: AcceptanceTester

我在缺少 wait() 方法时遇到了类似的问题。问题是我使用 PhpBrowser 而不是 WebDriver,而 PhpBrowser 不提供该方法。在你的测试器中自己实现它是微不足道的 class:

public function wait($seconds) {
    sleep($seconds);
}