我试图让e2e测试用于下一个例子:
HTML:
<div ng-if="selectedItem">
<span class-"xxx">This is line 1</span>
<span class="xxx yyy">This is line 2</span>
</div>
量角器:
..
element.findByCss('div[ng-if="selectedItem"] span[class!="yyy"]');
..
给出以下错误:
失败:元素状态无效:执行'querySelectorAll'失败 在'Document'上:'div [ng-if =“selectedItem”] span [class!=“yyy”]'不是 有效的选择器。
选择器与jQuery一起使用..我知道它不一样。但我似乎无法找到如何用量角器排除一个类
答案 0 :(得分:8)
使用not
否定伪类:
$('div[ng-if=selectedItem] span:not(.yyy)');
或者,在您的情况下,您还可以匹配完整的class
属性值:
$('div[ng-if=selectedItem] span[class=xxx]');
或者,如果这是适用的,您还可以通过索引获得第一个span
:
$$('div[ng-if=selectedItem] span.xxx').first();
$
以下是element(by.css())
,$$
- element.all(by.css())