今天使用IDEA,Junit使用Scanner控制台无法输入,我以为是代码的问题。于是把单元测试换成了main函数,发现控制台可以输入。那么如何解决这个问题呢?
idea控制台不能输入
下面是一个简单的测试代码:
import org.junit.Test;
import java.util.Scanner;
public class CalculatorTest {
@Test
public void t01(){
Scanner scanner=new Scanner(System.in);
int a=scanner.nextInt();
int b=scanner.nextInt();
testAddition(a,b);
}
public void testAddition(int a,int b) {
int result=a+b;
System.out.println(result);
}
}
在该单元测试运行后,出现了Scanner控制台无法输入的问题。
那么单元测试能不能使用Scanner呢,答案是能的。
解决控制台单元测试中Scanner不能输入数据的问题
如果在使用IDEA中,发现在使用junit测试的时候,不能在控制台进行输入,则需要进行如下的修改,即可配置成功
第一步:工具类中help --Edit Constom VM Options…
第二步: 打开配置,添加以下代码:
-Deditable.java.test.console=true
第三步:重新启动IDEA
配置成功,重新启动IDEA,问题即可解决。
测试:
版权归原作者 淅沥284 所有, 如有侵权,请联系我们删除。