如何在 div 中断言与其他孩子的直接文本

How to assert direct text with other childern in a div

我的输出中有以下 div HTML:

 <div class="panel-body">
     <h5 class="panel-body-heading">Comments</h5>
     Job updated.
 </div>

我有测试代码来声明这样的评论标题:

assert_select 'div.panel-body'  do
    assert_select 'h5.panel-body-heading' , /#{I18n.t('comments')}/
end

我想验证 div 也有文本(作业已更新),我该如何断言。

您可以使用正则表达式:

assert_select 'div.panel-body', /Job updated./  do
    assert_select 'h5.panel-body-heading' , /#{I18n.t('comments')}/
end

或者如果文本在某个变量中:

assert_select 'div.panel-body', /#{str_variable}/  do
    assert_select 'h5.panel-body-heading' , /#{I18n.t('comments')}/
end

来源:Rails API guide