2015-01-09 62 views
0

我無法從水豚中點擊元素。我已經通過其他帖子進行了搜索,沒有什麼能幫助我解決我的問題。如何點擊與水豚下拉的元素?

,我認爲看上去最好的解決辦法是這樣的: select "Manage Users", :from => "accountLink"

但作爲回報,我得到這樣的:

Admin Abilities Creates a new user 
Failure/Error: select "Manage Users", :from => "accountLink" 
Capybara::ElementNotFound: 
    Unable to find select box "accountLink" 
# ./spec/features/admin_abilities_spec.rb:15:in `block (3 levels) in <top (required)>' 
# ./spec/features/admin_abilities_spec.rb:14:in `block (2 levels) in <top (required)>' 

這裏呈現的HTML:

<li class='dropdown' id='accountLink'> 
      <a class='dropdown-toggle' data-toggle='dropdown' href='#'> 
      Account 
      <b class='caret'></b> 
      </a> 
      <ul class='dropdown-menu'> 
      <li id='accountLink'><a href="https://stackoverflow.com/users/edit">Change Info</a></li> 
      <li id='impersonateLink'><a href="/staff/impersonate">Impersonate User</a></li> 
      <li id='adminLink'><a href="/admin/users">Manage Users</a></li> 
      <li><a href="/toggle_fakenames">Toggle Fake Names</a></li> 
      <li id='logoutLink'><a href="https://stackoverflow.com/users/sign_out" data-method="delete" data-placement="right" data-title="Logged in as [email protected]" rel="tooltip nofollow">Logout</a></li> 
      <li class='divider'></li> 
      <li class='disabled'><a href="#" disabled="disabled">Server Default</a></li> 
      </ul> 
     </li> 

人幫助我得到水豚點擊這個元素?

回答

0

select 'Manage Users'正在尋找一個複選框,但是您的下拉列表項只是列表中的錨定標籤。所以,你可以點擊他們:

find('a.dropdown-toggle').click # assuming you only have one a.dropdown-toggle 
click_on 'Manage Users' # or find('#adminLink a').click 
0

有些事情應該工作

click_link "Manage Users" 

find(#adminLink).click 

注:您的HTML好像是用ID的厲害。他們應該只是一個頁面上的ID的一個實例。