Codeception / Yii2 中的等待方法

Wait method in Codeception / Yii2

我正在学习教程 "Web Application Development with Yii2 and PHP",其中代码接收用于测试目的 (TDD)。

当运行一个带有JavaScript验证的测试时,书中描述的测试使用Wait(1)方法让测试等待1秒以允许验证。

似乎(不再)支持此功能。文档里有,但是深入代码,找不到方法

我做错了什么,还是我错过了配置更改?

namespace Step\Acceptance;

class Guest extends \AcceptanceTester {

    public $username;
    public $password;

    public function __construct($scenario) {
        parent::__construct($scenario);

        if ($this->username and $this->password)
            $this->login($this->username, $this->password);
    }

    function login($username, $password) { // 1
        $I = $this;
        $I->amOnPage('/site/login');
        $I->fillField('LoginForm[username]', $username);
        $I->fillField('LoginForm[password]', $password);
        $I->click('Login');
        $I->wait(1);

        $I->seeCurrentUrlEquals('/');
    }
}

问题解决了吗?

我认为这是配置问题,您使用的是 webdriver 吗?也许 post 你的 acceptance.suite.yml 也是。 http://codeception.com/docs/modules/WebDriver#.VwOm6xN96Rs

等待函数在右边的函数列表中。

编辑:您的 acceptance.suite.yml 应该看起来像这样

modules:
   enabled:
      - WebDriver:
         url: 'http://localhost/'
         browser: firefox