2016-02-06 16 views
10

Yeni yayımlanan Style Guide, numaralı telefona göre by.xpath() konum belirleyicilerinin kullanılması kötü bir uygulama olarak kabul edilir. Aslında öneriyi takip etmeye çalışıyorum, ama ebeveyn bir öğe elde etmek için takıldım. Ana öğenin ileticinin yerini belirlemek için önerilen yol

Şu anda öğenin ebeveyne almak için .. XPath ifadesini kullanıyor:

this.dashboard = element(by.linkText("Dashboard")).element(by.xpath("..")); 

nasıl Açıölçer/WebDriverJS tespitçilerinin yerleşik diğer kullanarak öğenin üst bulabilir?

+1

olarak bildiğim kadarıyla, ifadesiyle ".." xpath ebeveyn almak için tek yoldur elemanın Ben genellikle eleman bulmak için cssSelector kullanıyorum ama hala ebeveynlerini almak için xpath kullanmam gerekiyor. – Buaban

cevap

7

Stil Kılavuzu'nu kazarken ve xpath'in önleneceğini kabul ederken, her zaman kuralın ispatı olan bir istisna vardır. Bence bu durumlardan biri de budur :)

+1

Bu istisnanın artık geçerli olmadığını @quirimmo ile kabul ediyorum. [ParentElementFinder hakkında burada resmi olmayan bir belgeyi bulun] (http://w3cgeek.com/locating-parent-elements-with-parentelementarrayfinder.html) –

4

Şu anda, xpath kullanmaktan kaçınan bir elemanın ana öğesinin seçilmesi için daha kolay bir yol var. Bir ElementFinder itibaren sadece parentElementArrayFinder yoluyla ana unsuru erişebilir ve daha sonra örneğin click yöntemi tetikleyebilir:

myElement.parentElementArrayFinder.click();

İlgili konular