量角器/ Webdriver访问DOM元素属性

时间:2018-01-23 14:03:04

标签: selenium selenium-webdriver protractor automated-tests

我正在为Angular / Polymer应用程序编写e2e测试(因此使用Web组件)。是否可以访问DOM属性,如下所示: $0.selectedItem? 我尝试使用:

elem = browser.executeScript('return document.querySelector("my-scrollList")');

然后调用

elem .then(function (el){
    console.log(el.selectedItem);
});

但它不起作用。

但是,如果我直接从executeScript命令调用属性,那么它可以正常工作,但它非常繁琐:

elem = browser.executeScript('return document.querySelector("my-scrollList").selectedItem');

有没有办法通过WebElements或Protractor API访问DOM属性?

提前致谢。

2 个答案:

答案 0 :(得分:1)

通过选择selected

中的<option>属性,使用CSS选择器
$("my-scrollList").$("option[selected]")

或:

$("my-scrollList option[selected]")

答案 1 :(得分:0)

您可能希望通过链接来查找$来查找父级中的元素。看看Protractor API。 你的代码可能看起来像这样:

elem.then(function (el){
    console.log(el.$('selectedItem'));
});