我正在尝试使用JUnit测试,但我不确定如何使用它。 我有一个类,其方法返回一个具有此类方法名称的String。
public class Example {
static void method1() {
System.out.println("method1");
}
public static void main(String[] args) {
method1();
}
}
现在,我想用JUnit断言来测试这个类,但由于没有变量,我不知道如何测试这段代码。
有人可以告诉我这个JUnit测试的完整代码吗?
答案 0 :(得分:2)
这很难进行单元测试,因为您的对象具有硬编码的依赖关系。该依赖项是系统输出控制台。从对象中删除该依赖项并将其移动到应用程序使用代码:
public class Example {
static String method1() {
return "method1";
}
public static void main(String[]args) {
System.out.println(method1());
}
}
现在,您可以通过简单断言方法返回的值是您所期望的来测试该方法。
此处的目标是从代码中删除依赖项。像系统控制台输出这样的东西必须在某个地方,但随着代码变得越来越复杂,你可以将它们隔离在可模拟的接口之后。您的业务逻辑,即您要进行单元测试的东西,应该没有依赖关系。