我遵循教程"使用Yii2和PHP进行Web应用程序开发"其中codeception用于测试目的(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('/');
}
}
答案 0 :(得分:1)
你解决了这个问题吗?
我认为这是一个配置问题,您使用的是webdriver吗?也许发布你的acceptance.suite.yml。 http://codeception.com/docs/modules/WebDriver#.VwOm6xN96Rs
等待功能位于右侧的功能列表中。
编辑:你的acceptance.suite.yml应该有这样的东西
modules:
enabled:
- WebDriver:
url: 'http://localhost/'
browser: firefox