我想验证伪元素的文本内容。使用返回的承诺ptor.executeScript("window.getComputedStyle(jQuery('.my-class')[0], ':after').content").then(function(data){
console.log(arguments) // {'0':null}
});
我也尝试过在期望中放弃它,但我猜这会因为同样的原因而失败。
由于对此的 CSS 声明无论如何都指向元素的属性之一,我是否应该尝试读取该属性?
我想验证伪元素的文本内容。使用返回的承诺ptor.executeScript("window.getComputedStyle(jQuery('.my-class')[0], ':after').content").then(function(data){
console.log(arguments) // {'0':null}
});
我也尝试过在期望中放弃它,但我猜这会因为同样的原因而失败。
由于对此的 CSS 声明无论如何都指向元素的属性之一,我是否应该尝试读取该属性?
executeScript
将等待您返回一个值 - 所以您需要这样做:
ptor.executeScript("return window.getComputedStyle(jQuery('.my-class')[0], ':after').content")
.then(function(data){ console.log(arguments)});
作为基于我们的好朋友朱莉又名“量角器向导”的更新答案。
我没有可用的 jQuery 来获取我的伪元素,所以我这样做了......
describe('#swPopover Component', () => {
it('should show the popover message when hovered', () => {
browser.actions().mouseMove(objectsPage.popover).perform();
browser.executeScript('return window.getComputedStyle(document.querySelector(".sw-popover"), ":after").content')
.then(data => expect(data).toBe('"I am the popover text"'));
});
});