0

我正在尝试使用 Cucumber 和 Ruby 测试网页上的列表。

列表更改(取决于用户输入)基本上,我想将所有项目抓取到一个数组中 - 然后我想确保列表按字母顺序排列。任何人的想法

4

2 回答 2

1

使用 capybara 的all方法在页面上查找元素:

elements_array = page.all(:css, 'li')

请参阅相应的 API 文档

于 2012-04-16T17:35:07.883 回答
0

假设您使用 Capybara 和 CSS 选择器,这将为您提供一个包含列表中每个元素的文本的数组:

list_items = page.all('li').collect(&:text)

如果您使用的是 RSpec,您可以确认它们是按以下方式排序的:

list_items.sort.should == list_items

(您可能会编写一个 be_sorted RSpec 匹配器以使其更清晰)。

于 2012-04-17T16:53:25.403 回答