gpt4 book ai didi

ruby - 在 rspec 测试中填充实例变量

转载 作者:数据小太阳 更新时间:2023-10-29 06:51:29 24 4
gpt4 key购买 nike

我有一个具有以下初始化方法的类。

def initialize(my_var)
@my_var = my_var
end

然后我想测试对 @my_var

做些什么的方法
def split
@my_var.split(",")
end

如何在测试它正确返回数组之前更改 @my_var

如果没有 @my_var 的访问器,这是可能的吗?

最佳答案

这听起来不像是正确的做法。 Rspec 应该测试类和模型的接口(interface)行为——而不是内部实现(无疑是实例变量)。有多种方法可以做到这一点,但您确定不想为该变量设置访问器吗?

无论如何,您可以使用 my_object.instance_variable_get("@my_var")my_object.instance_variable_set("@my_var", value) 来操作变量。

关于ruby - 在 rspec 测试中填充实例变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13069536/

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