测试连接记录创建

问题描述

一个创建用户方法,有一个创建连接表记录的结果方法

  if @user.save
    @roleshopuser = Rolehopuser.create(user_id: @user.id,shop_id: @site.shop_id,role_id: params[:role_id])  

然而,在测试该方法时,测试遇到错误

NameError: uninitialized constant UsersController::Rolehopuser

父模型定义

  accepts_nested_attributes_for :roleshopusers

方法在应用程序正常处理中有效。

如何编写此测试以允许创建连接表记录?

解决方法

您应该需要编辑缺少“s”的变量 @roleshopuser

@roleshopuser = Roleshopuser.create(user_id: @user.id,shop_id: @site.shop_id,role_id: params[:role_id])