在Practical Object-Oriented Design in Ruby: An Agile Primer,作者写道,“[对象]是负责测试自己的接口,它通过使关于结果的说法,这些[进入]消息返回这样做。......这些消息需要测试,因为其他应用程序对象dpeend上他们的签名和他们返回的结果。“我应该单元测试不返回值的消息吗?
她解释,“用于测试传入消息的第一个要求是要证明,它在每一个可能的情况返回正确的值,”给这个作为一个例子的单元测试用于diameter
方法针对一种假设的Wheel
类:
def test_calculates_diameter
wheel = Wheel.new(26, 1.5)
assert_in_delta(29, wheel.diameter, 0.01)
end
我的问题是,那些没有返回值的传入消息呢?我有一个对象的公共接口只有两个方法不返回一个值,而只是改变接收对象的状态。我还需要测试该对象吗?如果是这样,怎么样?