我有一个类似的课程:
.data("my-property", "value")
我想为它编写一个单元测试。我想要发生的是“拦截”对[data-my-property=value]
的调用,以便我可以运行静态方法class A {
public static void makeCall() {
URL url = "www.google.com";
InputStream result = url.openStream();
//Do more stuff
}
}
并返回某种硬编码的JSON,而不是实际进行调用。我无法弄清楚如何模拟它,或者甚至可能。
我正在寻找与Angular的openStream()
相同的行为,任何想法或建议?
答案 0 :(得分:3)
您不需要模拟方法成员变量。为了更好的设计,使url成为方法中的参数。
public static void makeCall(URL url){
然后在你的测试传递中进行模拟。
这也可以在将来提供更大的灵活性和可能的代码重用。