assert_select rails中的第一个和第二个html表格单元格内容

dot*_*dot 3 integration-testing assert ruby-on-rails

我有以下html表:

<table class="list user_permission">
  <tr>
    <th>Name</th>
    <th>Permission</th>
  </tr>
  <tr id="permission_1">
    <td>
      test user01
    </td>
    <td>
      Reading permission
    </td>
  </tr>
</table>
Run Code Online (Sandbox Code Playgroud)

我想在我的测试中断言我的第一个和第二个表格单元格的内容.我用以下方式尝试了它:

assert_select "tr#permission_1 td", "test user01"
assert_select "tr#permission_1 td", "Reading permission"
Run Code Online (Sandbox Code Playgroud)

但它没有用,它找不到这样的条目.

RPi*_*nel 7

你可以这样测试:

assert_select 'table' do
  assert_select 'tr#permission_1' do
    assert_select 'td:nth-child(1)', 'test user01'
    assert_select 'td:nth-child(2)', 'Reading permission'
  end
end
Run Code Online (Sandbox Code Playgroud)

如果这不起作用,您也可以尝试使用正则表达式:

assert_select 'td:nth-child(1)', /test user01/
Run Code Online (Sandbox Code Playgroud)