Mic*_*ant 5 ruby tags testing minitest
我有
require 'minitest/spec'
require 'minitest/autorun'
require 'minitest/tags'
require 'rspec/expectations'
describe "One happy and one sad test", :happy do
include RSpec::Matchers
it "it is true" do
expect(true).to be true
end
it "it is false" do
expect(false).to be true
end
end
Run Code Online (Sandbox Code Playgroud)
该describe标签有效,但我无法将标签添加到it,如
it "it is true", :happy do
expect(true).to be true
end
Run Code Online (Sandbox Code Playgroud)
没有得到:
$ 红宝石测试示例.rb
...1: from test_example.rb:9:in `block in <main>'
.../minitest-5.11.3/lib/minitest/spec.rb:212:in `it':
wrong number of arguments (given 2, expected 0..1) (ArgumentError)
Run Code Online (Sandbox Code Playgroud)
我的 Gem 文件中有 minitest-tags gem 并已捆绑
minitest -tags gem 不接受标签作为附加参数,而是在标题文本中给出:
it "does stuff(some,tags)"
Run Code Online (Sandbox Code Playgroud)
但是,如果您想要更多describe类似的标签,那么我认为您想使用minispec-metadata来代替:
it "does stuff", :some, :tags
Run Code Online (Sandbox Code Playgroud)
然后您可以使用以下选项运行选定的测试--tag:
$ ruby test_example.rb --tag some --tag tags
Run Code Online (Sandbox Code Playgroud)
请注意,minitest-tags gem 已经过时了,如果同时安装,它会与minispec-metadata发生冲突!我建议卸载minitest-tags,并使用minispec-metadata代替。
OP 的注释- 所以我最终得到了:
require 'minitest/spec'
require 'minitest/autorun'
require 'minispec-metadata'
require 'rspec/expectations'
describe "One happy and one sad test" do
include RSpec::Matchers
it "is is true", :happy do
expect(true).to be true
end
it "it is false", :sad do
expect(true).to be true
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
952 次 |
| 最近记录: |