gpt4 book ai didi

ruby - 如何要求正确版本的测试/单元

转载 作者:行者123 更新时间:2023-12-04 18:58:07 31 4
gpt4 key购买 nike

我试图要求 test/unit 的新版本(即不是与 ruby​​ 捆绑的版本) .根据 instructions我用 gem i test-unit 安装它.但是现在当我需要 test/unit我似乎需要旧版本。例如,我没有方法 Test::Unit.at_start .即使我明确要求新的 test/unit 的完整路径,也会发生这种情况。安装。

我有什么办法可以调查正在加载哪些符号以及为什么?

最佳答案

由于 Ruby 附带了 test/unit 的实现(它实际上是一个 Minitest 兼容性包装器)调用 require 'test/unit'将加载该版本,因为它已经在加载路径上。调用require '/absolute/path/to/test/unit'将加载新文件,但是当该文件调用例如require 'test/unit/testcase它将从 stdlib 加载文件,从而产生混合类(所以不要这样做)。

您需要做的是使用 gem method 激活 gem在你面前require它。这将确保 gem lib 路径在 stdlib 之前的加载路径上,所以 require将首先找到这些文件。

gem 'test-unit'     # You can also pass a specific version as a second
# argument to `gem` if you want.

require 'test/unit' # This will find the gem version.

# Now the gem version will be loaded.

关于ruby - 如何要求正确版本的测试/单元,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24003388/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com