0

当需要为 STI 关联编写单元测试时,应该使用哪些步骤。我完全糊涂了。请提供一些建议或一些教程的链接。提前致谢

4

2 回答 2

1

像通常测试任何单个类一样测试所有 3 个类:

class Person < ActiveRecord::Base
  attr_reader :first_name, :last_name
  def initialize
    @first_name = "George"
    @last_name = "Washington"
  end

  def formatted_name
    "#{@first_name} #{@last_name}"
  end
end

class Doctor < Person
  def formatted_name
    "Dr. #{@first_name} #{@last_name}"
  end
end

class Guy < Person
  def formatted_name
    "Mr. #{@first_name} #{@last_name}"
  end
end

describe Person do
  describe "#formatted_name" do
    person = Person.new
    person.formatted_name.should == "George Washington"
  end
end

describe Doctor do
  describe "#formatted_name" do
    doctor = Doctor.new
    doctor.formatted_name.should == "Dr. George Washington"
  end
end

describe Guy do
  describe "#formatted_name" do
    guy = Guy.new
    guy.formatted_name.should == "Mr. George Washington"
  end
end
于 2011-06-28T06:08:22.177 回答
0

应该编写测试用例的 STI 关系绝对没有什么特别之处。由于这是框架提供的功能,因此框架附带了一堆测试用例。

您只需要为正在构建的功能编写测试用例。

于 2010-09-23T08:03:38.243 回答