如何在MiniTest中运行单个文件内的指定测试用例?
在MiniTest中运行单个文件的指定测试用例
有两种常用方法可以实现只运行all.rb里的test_assert测试用例:
方法一:直接用Ruby命令行运行
不用依赖Rake,直接通过Ruby命令指定要执行的测试方法,命令如下:
ruby -I test test/subdir/all.rb -n test_assert
-I test:把test目录添加到Ruby的加载路径,确保能正确加载测试文件-n test_assert:指定只运行名称为test_assert的测试方法
方法二:修改Rakefile支持指定测试方法
如果习惯用Rake任务运行测试,可以修改Rakefile,让它支持通过环境变量传入要运行的测试方法名:
修改后的Rakefile内容:
require 'minitest/test_task' Minitest::TestTask.create(:test) do |t| t.test_globs << './test/subdir/all.rb' # 读取环境变量TEST_NAME,存在的话就只运行该测试方法 t.name = ENV['TEST_NAME'] if ENV['TEST_NAME'] end task :default => :test
运行时通过环境变量指定测试方法:
rake test TEST_NAME=test_assert
内容的提问来源于stack exchange,提问作者tscheingeld
相关产品推荐
相关产品推荐

