使用页面对象 gem 单击嵌套在 div 中的 link

Clicking a link that's nested inside a div using page-object gem

我有一个页面有 link More restaurants。我不确定如何使用 Cheezy 的页面对象 gem 访问它。

当我单击 link 时,它会打开一个模式,显示比默认显示的列表中的十家餐厅更多的餐厅。

<div class="singleselect-radio-footer">
    <a href="" ng-click="toggleModal('singleselecRadioMoreOptionsModal.html')" r_test="singleselect-link-SelectRestaurant-more" ng-show="alwaysShowMoreLink || items.length > limit" class="ng-binding">More Restaurants</a>
</div>

我尝试使用 link

link(:more_restaurants, text: 'More Restaurants')

more_restaurants.click

div(:more_restaurants, class: 'singleselect-radio-footer')

def try_to_click
  sleep(2)
  self.more_restaurants_element.click
end

我想知道在没有 ID 的情况下访问此类元素的最简单方法是什么。

要使用页面对象 gem 访问 link 的底层方法,您需要添加“_element”作为名称的后缀。

link(:more_restaurants, text: 'More Restaurants')
more_restaurants_element