生活知识集
第二套高阶模板 · 更大气的阅读体验

Ruby单元测试怎么写 实用操作步骤与避坑指南

发布时间:2026-01-02 23:10:36 阅读:307 次

很多人在学编程时,觉得ref="/tag/192/" style="color:#479099;font-weight:bold;">测试是件麻烦事。其实写 Ruby 单元测试没那么难,就像你买新电器前先试试开关能不能亮灯一样,程序也得先验验是不是正常工作。

用 MiniTest 写个简单的测试

Ruby 自带 MiniTest,不用额外安装就能上手。比如你写了个算面积的方法:

def calculate_area(length, width)
length * width
end

你可以给它写个测试,看看结果对不对:

require 'minitest/autorun'

class TestArea < Minitest::Test
def test_calculate_area
result = calculate_area(4, 5)
assert_equal 20, result
end
end

运行这个文件,如果输出中显示“1 runs, 1 assertions”,说明测试通过了,就像你按下电灯开关,灯亮了,心里踏实。

换个场景:验证用户输入

假设你在写一个控制智能家居温度的脚本,需要判断温度是否合理。你写了这样一个方法:

def valid_temperature?(temp)
temp.between?(18, 30)
end

对应的测试可以这样写:

require 'minitest/autorun'

class TestTemperature < Minitest::Test
def test_valid_temperature
assert valid_temperature?(22)
refute valid_temperature?(35)
refute valid_temperature?(10)
end
end

这样每次改完代码跑一遍,就知道有没有不小心把合理范围写错。

测试不是为了应付检查,而是让你改代码时更有底气。就像你换了插座线路,总得拿个电笔测一下通不通。Ruby 单元测试就是程序员的电笔。