Я отлаживал тест и обнаружил, что транспортир находит правильный элемент, но местоположение (x и y) не ссылается на местоположение найденной кнопки. Когда клик вызывается в этом элементе, он пропускает и нажимает не то место, из-за чего тест терпит неудачу.
В качестве примечания эти тесты, похоже, отлично работают на других машинах, с той лишь разницей, что операционная система, с которой работают тесты, является Windows 10?
Кто-нибудь знает, как транспортир/селен определяет местоположение элемента.
Спасибо заранее.
Джек Ривз
EDIT:
После комментария, запрашивающего несколько примеров:
Чтобы получить объект страницы:
browser.get('examplePageAddress')
Чтобы получить заголовок, в котором находится кнопка:
var elem = element.all(by.className('header')).get(0)
Чтобы получить div, что кнопка находится внутри заголовка:
var div = elem.element(by.name('examplename'))
Чтобы получить фактическую кнопку
var button = element(by.name('exampleButtonName'))
В текущем тесте вызывается простая кнопка button.click(), и это то, что пропускает кнопку примерно на 50 пикселей.
С помощью отладки и записи на консоль я подтвердил, что правильный элемент выбран [using.getInnerHTML()], и, измеряя местоположение кнопки, определено, что оно около 50px разных [используется .getLocation() для определения x и y, возвращенный транспортиром]