質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RSpec

RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

解決済

RailsでRSpecによるテストの際にでたエラーを解決したいです

uruman
uruman

総合スコア12

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RSpec

RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

1回答

0評価

0クリップ

690閲覧

投稿2021/10/22 18:41

前提・実現したいこと

RSpecによるテストの際にでたエラーを解決したいです
ユーザログイン後のテスト ユーザ一覧画面のテス ト 表示内容の確認 自分と他人のshowリンクがそれぞれ表示される

発生している問題・エラーメッセージ

4) [STEP2] ユーザログイン後のテスト ユーザ一覧画面のテス ト 表示内容の確認 自分と他人のshowリンクがそれぞれ表示され る Failure/Error: expect(page).to have_link 'Show', href: user_path(user) expected to find link "Show" with href "/users/2" but there were no matches

該当のソースコード

controller

class UsersController < ApplicationController before_action :authenticate_user! def show @user = User.find(params[:id]) @books = @user.books #userにはユーザ情報、そこに紐付いているbooksモデル @book = Book.new end def index @users = User.all @book = Book.new @user = User.find(current_user.id) end def edit @user = User.find(params[:id]) if @user == current_user render "edit" else redirect_to user_path(current_user) end end def update @user = User.find(params[:id]) @user.id = current_user.id if @user.update(user_params) redirect_to user_path(@user.id), notice: "You have updated user successfully." else render "edit" end end private def user_params params.require(:user).permit(:name, :introduction, :profile_image) end end

indexhtml

<% @user.books.each do |user| %> <tr> <td><%= attachment_image_tag(@book.user, :profile_image, :fill,40,40,fallback: "no-image-icon.jpg")%></td> <td><%= @user.name %></td> <td><%=link_to "Show",user_path(user.id) %></td> </tr> <%end%>

試したこと

いろいろ調べたのですが分かりませんでした。
どなたか教えていただけると幸いです

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。
Rails 5.26

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RSpec

RSpecはRuby用のBDD(behaviour-driven development)フレームワークです。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。