Rails 测试执行期间的自省——如何进行?

发布于 2024-10-06 06:05:55 字数 219 浏览 7 评论 0原文

我在执行 Rails 测试期间生成一些输出文件,并且我希望能够根据当前测试类和当前测试方法命名这些文件。有没有办法将此信息内置到 Test::Unit 中?有没有一些聪明的方法可以从测试方法中得到这个?我可以通过调用 method 来获取当前的方法名称,但我不知道如何获取当前的类名称。

调用 self.class 返回控制器,而不是实际的测试类(例如 PostTest)。

I am generating some output files during the execution of rails tests, and I would like to be able to name the files based on the current test class and current test method. Is there a way to get this information built into Test::Unit? Is there some clever way to get this from inside the test methods? I can get the current method name by calling method, but I can't figure out how to get the current class name.

Calling self.class returns Controller, not the actual test class ( PostTest, for example ).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

薆情海 2024-10-13 06:05:55

这应该在单元测试中返回您的类名:

  test "class name" do
    puts "#{self.class.name}"
  end 

您是说这对您不起作用吗?它应该有效。

This should return your class name in unit test:

  test "class name" do
    puts "#{self.class.name}"
  end 

Are you saying this is not working for you? It should work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文