Я хочу проверить количество пикселей, на которое элемент был перемещен через абсолютную позицию, из таблицы стилей CSS, при использовании selenium Webdriver в тесте приема кода. В моем примере интерфейс показывает, что элемент «Включен», когда фоновое изображение абсолютно расположено на 50 пикселей вправо.
Хотя Codeception не имеет этой команды по умолчанию, вы можете использовать ExecuteInSelenium или Helper, который, как я полагаю, разрешит эту операцию.
Пример, представленный для Codeception ExecuteInSelenium:
$I->executeInSelenium(function(\WebDriver $webdriver) {
$webdriver->get('http://google.com');
});
Пример значения CSS, которое я хочу проверить для элемента, является «правильным» значением.
.on_switch {
position: absolute;
right: 50px;
}
Элемент HTML указан как:
<div class="on_switch"></div>
Из-за повторяющегося имени класса для других элементов мне нужно использовать Xpath, и я считаю, что следующее даст мне значение количества пикселей, но я не уверен, как проверить, что значение равно 50px, чтобы этот шаг теста прошел .
$I->executeInSelenium(function(\WebDriver $webdriver) {
$webdriver->driver.findElement(By.xpath("myxpath")).getCssValue("right");
});
Мне трудно найти примеры в Интернете, и любая помощь приветствуется.