gpt4 book ai didi

java - 需要测试静态Utils类

转载 作者:行者123 更新时间:2023-12-01 23:15:19 27 4
gpt4 key购买 nike

我有一些类共享一些常见的无状态方法,因此我创建了一个 Util 类,这是一个示例方法:

public class FileUtil {
private static final int kFILEBUFSIZE = 128;
private static FileUtil fSingleton;

public static synchronized FileUtil instance() {
if( fSingleton == null )
fSingleton = new FileUtil();
return fSingleton;
}
.....

因此,所有使用这些方法的类都会静态导入 Util 类。现在当我测试时出现问题,静态方法无法被覆盖。创建一个所有其他类扩展的基类(并不真正遵循“is a”原则)会更好,还是只是将测试需要重写的静态方法移到主类中?

在我的测试期间,我想覆盖instance()并只返回一个模拟对象。

最佳答案

我希望这不是实际的代码,因为 String 在我认识的任何 java 中都没有 size() 方法。

在 jUnit(或其他单元测试框架)中测试方法。

例如


public class TestBlammy
{
@Test
public void test1()
{
assertEquals(5, Util.sizeOf("12345"));
assertEquals(0, Util.sizeOf(""));
assertEquals(0, Util.sizeOf(null)); // you don't currently handle this, but should.
}
}

关于java - 需要测试静态Utils类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21314047/

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