t.me/atinfo_chat Telegram группа по автоматизации тестирования

как получить список елеменетов WebDriver Codeception PHP

codeception
locators
chrome
php
webdriver
Теги: #<Tag:0x00007fb300369dd0> #<Tag:0x00007fb300369bf0> #<Tag:0x00007fb300369a38> #<Tag:0x00007fb300369830> #<Tag:0x00007fb300369628>

(Aplusrivne) #1

Проблема (Вопрос) заключается …

Мне нужно получить список ссылок с одинаковыми селекторами. А потом “прокликать” их все отдельно.

Я использую простой скрипт и запускаю его с командной строки
php codecept7.phar run tests\acceptance\SigninCept.php

Не могу понять как это сделать.

Использую WebDriver, Chrom


(Andrey) #2

Привет, попробуйте как то так

 public function testmultiple(AcceptanceTester $I): void
    {
        $I->executeInSelenium(function(\Facebook\WebDriver\Remote\RemoteWebDriver $webDriver) {
            $elements = $webDriver->findElements(\Facebook\WebDriver\WebDriverBy::cssSelector("tbody tr"));
            foreach ( $elements as $element) {
                $element->click();
            }
        });
    }

(A) #3

$links=$I->grabMultiple(‘путь до ссылок’); - подсчитывыаем количество ссылок в блоке
$I->comment(count($links));
for ($link=1;;$link++) {
$I->click(“локатор ссылки + $link”) проходим циклом по всему блоку
if ($link==count($links)) break;
}