いつもお世話になっている以下のページに要素の検証方法についての記載がなかったので、ここに記録しておこうと思います。
( いつも本当にお世話になっています!! )
結論
rspec/*/**_spec.rb
expect(page.all("input.btn__works").count).to eq 2
app/views/**/*.html.erb
<ul class="user--works__types">
<li>
<%= form_tag(url_for(action: 'my_works'), remote: true) do %>
<%= submit_tag "作品一覧", class: "btn__works" %>
<% end %>
</li>
<li>
<%= form_tag(url_for(action: 'favorites'), remote: true) do %>
<%= submit_tag "お気に入り", class: "btn__works user--works__now" %>
<% end %>
</li>
</ul>
余談
このコードには2という数値をハードコーディングしている問題点が残ります。
また、参考記事にもこの記載が乗っていないということは、実際にはよくないテスト方法なのかもしれません。
ただこのコードを書いてみて感じたことは、count
という配列を引数にとるメソッドを利用している事から、「rspecではhtmlを要素を配列してまとめることで捉えている」、という学び(仮説?)を得ました。
学習不足で正しくはないかもしれませんが、イメージとしてはそのような使い方を予想しました。