4

是否有一个简单的 ruby​​ 或 rails 命令来获取应用程序中所有测试的列表?我主要使用Shouda,但如果有一个红宝石解决方案,不管测试套件也可以工作。

4

3 回答 3

1

我找到了一个迂回的解决方案:test_benchmarker 插件。您使用额外的环境变量运行测试,如下所示:

rake test BENCHMARK_TESTS=true

您最好将输出通过管道传输到文件,因为它会很。但它会为您提供所有测试类和测试本身的列表,包括单元和功能。显然,它也为您提供了基准测试结果,这是一个奖励。

有更好的吗?我想这已经很接近了,而且额外的努力很少,为什么不也得到基准测试结果呢?RSpec 内置了这个特性,但也许为 Test::Unit 编写一个版本会很有趣。

于 2010-01-21T21:39:08.873 回答
0

我认为这里不可能有一个万能的解决方案:如何识别测试将在很大程度上依赖于框架。一旦你进入了像 shoulda 这样的框架,几乎不可能在不执行它们的情况下识别所有测试,例如,考虑在should循环中有需求的情况。

在执行时列出所有测试将是深入研究框架代码以识别/生成各个测试并提取所需信息的问题。

我很想知道我是否(以及如何)错了,不过......

于 2010-01-21T20:01:18.250 回答
0

我想你需要这个。这就是“rails test”命令的作用

tests = Rake::FileList["test/**/*_test.rb"]
于 2019-05-27T12:30:48.047 回答