Module: Selenium::WebDriver::SearchContext
- Included in:
 - Driver, Element, ShadowRoot
 
- Defined in:
 - lib/selenium/webdriver/common/search_context.rb
 
Constant Summary collapse
- FINDERS =
          
This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.
 { class: 'class name', class_name: 'class name', css: 'css selector', id: 'id', link: 'link text', link_text: 'link text', name: 'name', partial_link_text: 'partial link text', relative: 'relative', tag_name: 'tag name', xpath: 'xpath' }.freeze
Class Attribute Summary collapse
- 
  
    
      .extra_finders  ⇒ Object 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Returns the value of attribute extra_finders.
 
Class Method Summary collapse
Instance Method Summary collapse
- 
  
    
      #find_element(*args)  ⇒ Element 
    
    
  
  
  
  
  
  
  
  
  
    
Find the first element matching the given arguments.
 - 
  
    
      #find_elements(*args)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Find all elements matching the given arguments.
 
Class Attribute Details
.extra_finders ⇒ Object
Returns the value of attribute extra_finders.
      39 40 41  | 
    
      # File 'lib/selenium/webdriver/common/search_context.rb', line 39 def extra_finders @extra_finders end  | 
  
Class Method Details
.finders ⇒ Object
      41 42 43  | 
    
      # File 'lib/selenium/webdriver/common/search_context.rb', line 41 def finders FINDERS.merge(extra_finders || {}) end  | 
  
Instance Method Details
#find_element(how, what) ⇒ Element #find_element(opts) ⇒ Element
Find the first element matching the given arguments
When using Element#find_element with :xpath, be aware that webdriver follows standard conventions: a search prefixed with “//” will search the entire document, not just the children of this current node. Use “.//” to limit your search to the children of the receiving Element.
      65 66 67 68 69 70 71 72  | 
    
      # File 'lib/selenium/webdriver/common/search_context.rb', line 65 def find_element(*args) how, what = extract_args(args) by = SearchContext.finders[how.to_sym] raise ArgumentError, "cannot find element by #{how.inspect}" unless by bridge.find_element_by by, what, ref end  | 
  
#find_elements(*args) ⇒ Object
Find all elements matching the given arguments
      80 81 82 83 84 85 86 87  | 
    
      # File 'lib/selenium/webdriver/common/search_context.rb', line 80 def find_elements(*args) how, what = extract_args(args) by = SearchContext.finders[how.to_sym] raise ArgumentError, "cannot find elements by #{how.inspect}" unless by bridge.find_elements_by by, what, ref end  |