在我的Cest Class中进行所有测试之前,我正尝试登录Joomla后端。
我正在使用Joomla浏览器模块: https://github.com/joomla-projects/joomla-browser
在cest类中使用它时,在每次测试之前都会执行登录,这是不需要的:
public function _before(AcceptanceTester $I)
{
$I->doAdministratorLogin();
}
将其添加到Acceptance Helper时,如下所示:
namespace Helper;
class Acceptance extends \Codeception\Module
{
public function _beforeSuite($settings = array()) {
$I = $this;
$I->doAdministratorLogin();
}
}
我得到了
调用未定义的方法Helper \ Acceptance :: doAdministratorLogin()
答案 0 :(得分:0)
您必须检索JoomlaBrowser模块:
$this->getModule('JoomlaBrowser')->doAdministratorLogin();
您还在Cest文件中使用了_before
方法,但在Helper文件中使用了_beforeSuite
WebDriver对象未在_beforeSuite中初始化。
您的选择是:
_before
在_initialize
_beforeSuite
方法
$这 - > getModule( 'JoomlaBrowser') - > _initialize(); $这 - > getModule( 'JoomlaBrowser') - > doAdministratorLogin();