Как установить контур CSS на элемент в рамках Magellan / Nightwatch?
Предположим, что при написании или проверке теста код команды:
pToggleMyCoolToggle: function () {
var selectors = this.elements;
return this
.getEl(selectors.myCoolCheckbox.selector)
.moveToEl(selectors.myCoolCheckbox.selector)
.clickEl(selectors.myCoolCheckbox.selector);
}
Как можно показать этот элемент в браузере с помощью контура с помощью CSS:
outline: 3px dotted orange
добавив некоторый код в вышеупомянутую команду, используя методы внутри Magellan / Nightwatch?
2 ответа
Просто используйте.execute
client.execute(function(){
document.getElementById('idYouWantToTarget').style.border="3px dotted orange";
})
Я только что обнаружил, что имя selectors.myCoolCheckbox.selector
написано каким-то любителем. Это действительно должно быть paymentPage.useCreditCardRadio.selector
, Итак финал selector
утверждает, что такое селектор CSS
Линия selectors = this.elements
тоже очень вводит в заблуждение. selectors
это не "элементы". Это может быть paymentPage = this.elements
а также paymentPage
имеет много свойств, в том числе useCreditCardRadio
, Или это может быть paymentPageElements = this.elements
что значит paymentPageElements
это объект, который содержит все элементы. Таким образом, этот пример показывает, как плохое именование влияет на программирование для всех людей, которым нужно будет потрогать или отредактировать код в будущем.
В результате вы должны быть в состоянии использовать
var el = document.querySelector(paymentPage.useCreditCardRadio.selector);
и как только у вас есть элемент, вы можете добавить контур к нему.