Как удалить свойства стиля в TestCafe - PullRequest
0 голосов
/ 17 января 2019

Как я могу удалить свойства CSS на стороне клиента, используя TestCafe в React build?

В настоящее время я работаю для клиента, в котором полилинии нарисованы, но я не могу сравнить результаты DOM с оригиналом из-за следующего атрибута стиля transform: matrix(1.4043, 0, 0, 1.4043, 40.5, 0);, который масштабирует элементы DOM.

Я не могу найти никакого решения, поэтому мой вопрос: как я могу удалить этот атрибут стиля?

Заранее спасибо!

1 Ответ

0 голосов
/ 17 января 2019

Решением является использование ClientFunction :

const getStyleAttribute = ClientFunction((selector) => {
    const element = selector();
    return element.getAttribute('style');
});

const setStyleAttribute = ClientFunction((selector, styleValue) => {
    const element = selector();
    element.setAttribute('style', styleValue);
});

const field = Selector('your selector');
const styles = await getStyleAttribute(field) || '';
const updatedStyles = 
`${styles} background-color: red; transform: matrix(1.4043, 0, 0, 1.4043, 40.5, 0);`;

await setStyleAttribute(field, updatedStyles);

Приведенный выше пример добавляет преобразование и цвет фона. Вы можете адаптировать этот код вместо стилей.

Не забудьте импортировать ClientFunction в тестовый файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...