Модуль Codeception: Как искать на странице/доме

Я хочу написать общий метод, который в определенные моменты времени я могу просто сказать

$I->amOnPage('/');
$I->dontSeeAnyWarningsOrErrors ();

Но я не успеваю. Я использую codeception всего несколько часов, поэтому я мог легко что-то упустить, но поиск по их сайту, их репозиторию github и SO не нашел ничего, что могло бы мне помочь.

Вот что я пробовал (результат: «ErrorException: отсутствует аргумент 1 для AcceptanceTester::dontSeeAnyWarningsOrErrors()»):

class AcceptanceHelper extends \Codeception\Module
{
    public function dontSeeAnyWarningsOrErrors ()
    {
        $this->dontSee ('PHP Warning');
        $this->dontSee ('PHP Error');
        $this->dontSee ('PHP Notice');
        $this->dontSee ('There was a website error');
        $this->dontSee ('Parse error: syntax error');
        $this->dontSee ('Call Stack:');
    }
}

Если я назову это так:

$I->amOnPage('/');
$I->dontSeeAnyWarningsOrErrors (null);

Затем я получаю «Неустранимая ошибка: вызов неопределенного метода Codeception\Module\AcceptanceHelper::dontSee()»

Также (метод не существует, что-то, что я нашел в основных файлах):

$res = $this->proceedSee('PHP Warning', null);
       $this->assertNot($res);

Также («Неопределенное свойство $session» (с использованием Selenium с Firefox)):

$page = $this->getModule('WebDriver')->session->getPage();

Кроме того, когда я пытался использовать «dontSeeAnyWarningsOrErrors», он жалуется, если я не добавляю аргумент (в вызове), когда я не определил никаких аргументов.

Спасибо, Ханс


person Hans    schedule 15.11.2014    source источник


Ответы (1)


Я справился с этим:

$I->dontSeeAnyWarningsOrErrors ($I);

А потом:

class AcceptanceHelper extends \Codeception\Module 
{ 
    public function dontSeeAnyWarningsOrErrors ($browser) 
    { 
        $browser->dontSee ('PHP Warning'); 
        $browser->dontSee ('PHP Error'); 
        $browser->dontSee ('PHP Notice'); 
        $browser->dontSee ('There was a website error'); 
        $browser->dontSee ('Parse error: syntax error'); 
        $browser->dontSee ('Call Stack:'); 
    } 
} 
person Hans    schedule 15.11.2014