Сodeception: Как проверить что вкладка активна?

codeception
php
Теги: #<Tag:0x00007f7b64b1db68> #<Tag:0x00007f7b64b1da28>

(Ирина Патиевец) #1

Здравствуйте, ни где не могу найти как проверить что вкладка активна?
Активности ее проявляется в смене цвета, с черного на зеленый.
Цвета не прописаны в коде.


(A) #2

нет никакого атрибута у элемента?


(Ирина Патиевец) #3

<ul id="submenu" class="submenu clearfix">
		<li data-id="23" class="item_23 active">
		<a href="/about/kak-stat-uchastnikom/">Как стать участником</a>
	</li>
code

(A) #4

по идеи здесь <li data-id=“23” class="item_23 active> должен быть ответ на Ваш вопрос - class меняет значение при активации/деактивации вкладки? если да, то достаточно проверки неидентичности значений до активации и после нее. (проверка именно цвета в вашем случае только визуально)


(Ирина Патиевец) #5

да меняет


        $I->seeElement('.item_23');
        $I->click(['link' => 'КАК СТАТЬ УЧАСТНИКОМ']);
        $I->wait(2);
        $I->seeElement('.item_23 active');
code

Но вот на последней строчке ошибка
Failed asserting that an array is not empty.


(A) #6

так Вам же надо проверить активацию вкладки - следовательно делаем так:

$before=$I->grabAttributeFrom(’.item_23’,‘class’); \null
$I->click([‘link’ => ‘КАК СТАТЬ УЧАСТНИКОМ’]);
$after=$I->grabAttributeFrom(’.item_23’,‘class’); \active
$I->assertNotEqual($before,$after); \ null != active