Ruby on rails 在模型规范中测试委托方法有意义吗?

Ruby on rails 在模型规范中测试委托方法有意义吗?,ruby-on-rails,Ruby On Rails,通常,这些委托方法在它们自己的类中进行测试。在进行委托的课堂上再次测试它们还有意义吗 class Post < ApplicationRecord delegate :username, :email, :name, to: :user, prefix: true end class Post

通常,这些委托方法在它们自己的类中进行测试。在进行委托的课堂上再次测试它们还有意义吗

class Post < ApplicationRecord
  delegate :username, :email, :name,
           to: :user, prefix: true
end
class Post

我的问题是我是否还需要在
post\u spec.rb
中再次测试
@post.user\u name

通常编写单元测试来测试实现的正确性。在这种情况下,这些方法是通过ActiveRecord实现的,所以测试它们就等同于测试AR


另一方面,如果从对象中删除这些方法,您的一些其他代码将失败,因此您需要确保这些交互在控制器/功能/集成层中被覆盖

测试这些方法的目标是什么?确保所有这些方法都可用于
Post
model您永远不需要“测试”任何东西。这总是关于权衡!您应该测试的是类的“公共”api。如果这些代表是其中的一部分,则应以某种方式对他们进行测试。