找一个表行

时间:2012-01-31 13:31:57

标签: ruby rspec html-table row

我正在进行RSpec测试,从而选择用户表中的指定行。用户表的HTML如下:

<tr id="IvUserList_DXDataRow0" class="dxgvDataRow_Injixo">
  <td class="dxgv">J.P.</td>
  <td class="dxgv">Mc Fly</td>
  <td class="dxgv">asd@kl.co</td>
  <td class="dxgv">30.01.2012</td>
  <td class="dxgvCommandColumn_Injixo dxgv" align="center">
  ..........
  ..........
  </td>
</tr>'

在每行的末尾有一个下拉按钮“dxgvCommandColumn_Injixo dxgv”,用于显示其他选项的上下文菜单(编辑,密码,删除)。我正在尝试选择行testuser@test.com的按钮,但每次都错误地选择按钮的第一次出现。

我的代码如下:

 before(:each) do
   within(:xpath, '//*[@id="IvUserList_DXMainTable"]') do
     row = find(:xpath, '//*[@class="dxgvDataRow_Injixo"]')
     row.should have_selector('td', :class => 'dxgv', :textContent => 'testuser@test.com')
     within(row) do
       find(:xpath, '//*[@class="dxgvCommandColumn_Injixo dxgv"]').click
     end     
   end
   sleep 1
   click_link 'Edit User'
   sleep 1
  end

有人可以告诉我是否有更好的方法来解决这个问题?

0 个答案:

没有答案