1
鑑於我有一個Capybara node element美孚。如何在其自己的Matchers方法調用中包含Capybara :: Node :: Element?
如何從Matchers模塊獲取實例方法以包含節點本身。
所以,如果我跑
nodeFoo.has_css?("a");
我想它,如果nodeFoo是沒有孩子的錨元素返回true。目前,似乎Capybara只搜索給定節點的孩子。
鑑於我有一個Capybara node element美孚。如何在其自己的Matchers方法調用中包含Capybara :: Node :: Element?
如何從Matchers模塊獲取實例方法以包含節點本身。
所以,如果我跑
nodeFoo.has_css?("a");
我想它,如果nodeFoo是沒有孩子的錨元素返回true。目前,似乎Capybara只搜索給定節點的孩子。
水豚API不提供直接的方式來做到這一點。所有Capybara :: Node :: Finders都以這種方式工作。
如果您要檢查其標籤名稱nodeFoo
有可以使用tag_name
function:
nodeFoo.tag_name
所以,你可以做你想做的有:
nodeFoo.tag_name == 'a' || nodeFoo.has_css?('a')
對不起,我給了一個具體的例子,但我對一般情況感到好奇。 – Jazzepi
@Jazzepi在一般情況下是不可能的。 'find_element'正常工作 - https://code.google.com/p/selenium/wiki/JsonWireProtocol#/session/:sessionId/element/:id/element,http://selenium.googlecode.com/git /docs/api/rb/Selenium/WebDriver/SearchContext.html#find_element-instance_method –
感謝您的幫助! – Jazzepi