2016-01-26 19 views
7

Im sonraki örnek üzerinde çalışmak için bir e2e testi almaya çalışırken:Açıölçer: Belirli bir sınıf değil sahip eleman almak

HTML:

<div ng-if="selectedItem"> 
    <span class-"xxx">This is line 1</span> 
    <span class="xxx yyy">This is line 2</span> 
</div> 

Açıölçer:

.. 
element.findByCss('div[ng-if="selectedItem"] span[class!="yyy"]'); 
.. 

Aşağıdaki hatayı verir:

Failed: invalid element state: Failed to execute 'querySelectorAll' on 'Document': 'div[ng-if="selectedItem"] span[class!="yyy"]' is not a valid selector.

Seçici jQuery ile çalışıyor olsa da .. Onun aynı olmadığını biliyorum. Ama

cevap

7

not olumsuzluk sözde sınıfını kullanın iletki ile bir sınıf dışlamak nasıl bulamıyorum:

$('div[ng-if=selectedItem] span:not(.yyy)'); 

Veya senin durumunda, ayrıca tam class özellik değerini eşleşebilir:

$('div[ng-if=selectedItem] span[class=xxx]'); 

Veya, bu uygulanabilir ise, ayrıca dizine göre ilk span alabilirsiniz:

$$('div[ng-if=selectedItem] span.xxx').first(); 

için - burada

bir element(by.css()) kısayol, $$ olduğunu