簡體   English   中英

如何計算無序列表中的列表元素? (RSpec的/水豚)

[英]How can I count list elements in unordered list? (RSpec/Capybara)

在我的網站中,我有這個列表:

<ul class="test">
  <li class="social_1"></li>
  <li class="social_2"></li>
  <li class="social_3"></li>
  <li class="social_3"></li>
</ul>

我的問題是:如何在我的ul類測試中計算li我已經嘗試過:

my_ul = page.find("ul[class='test']")
my_ul.each do |li|
  pp li['class']
end

但它不起作用。

反正有沒有做我上面編碼的事情?

假設ul父元素具有id = parent ..你可以這樣做

  list = Array.new 
  list = find('#parent ul').all('li')

現在你可以簡單地獲得列表大小

list.size 

你可以從陣列中的所有li中受益,也可以像這樣在每個li中收集文本

  list = find('#parent ul').all('li').collect(&:text)

我建議使用新的RSpec 3語法來計算Capybara的元素:

it "should have 4 li elements" do
   expect(find('ul.text')).to have_selector('li', count: 4)
end

更多信息請訪問: https//github.com/jnicklas/capybara#querying

使用page.all("ul.test li").size

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM