2016-11-25 1 views
0

、値を表示するコードは次のとおりです。テストビュー要素

<% @user ||= current_user %> 
<div class="stats"> 
    <a href="<%= following_user_path(@user) %>"> 
    <strong id="following" class="stat"> 
     **<%= @user.following.count %>** 
    </strong> 
    following 
    </a> 
    <a href="<%= followers_user_path(@user) %>"> 
    <strong id="followers" class="stat"> 
     <%= @user.followers.count %> 
    </strong> 
    followers 
    </a> 
</div> 

私のようなASSERT_EQUALSを使用しようとしています: ASSERT_EQUALSのuser.followers。カウント(表示されるフォローニング値)

しかし、私はページに表示されている値を参照する方法がわかりません。値にIDを割り当てる必要がありますか?もしそうなら、私はどのようにしてテストに参照することができますか?

私は十分な情報を提供していただきたいと思います。

ありがとう、

Ryan。

+0

私の投稿からはっきりしているかどうかわかりませんが、テストしようとしている特定のセグメントはアスタミックス(@ user.following.count)の間です。 –

+0

テストコードを投稿すると便利です。また、このセクションをチェックしてみてください。http://guides.rubyonrails.org/testing.html#testing-views –

+0

テストでは治具を使用していますか? –

答えて

1

2 scenerios(とあなたが両方をやるべきこと)が存在することができます:

  • あなたは、コントローラで計算され、カウントを検証したいです。パート1については
  • あなたはビュー(HTML)をテストしたい

:あなたのコントローラが持っているものを確認し、assigns() gives you controller objects/variables。パート2については

assert_equals assigns(:user).following.count, 2 

:としては assert_select を使用してビューをテストするために、hereを記述する。以下のような:いくつかのhardocded数でを.following.countので、あなたは常にいくつかの他のものは、次の数を変更していないことを確認します(ユーザー)

assert_select 'div.stats a strong#following', assigns(:user).following.count 

はまた、あなたは 割り当てを交換する必要があります。

+0

ありがとう、非常に参考になりました。 –

関連する問題