Java项目使用Junit测试时控制台无法输入的情况

今天写Spring实验时,发现使用@Test注解进行测试时,控制台输入不了,进而发生报错的情况,换成main方法后就可以成功输入了。


报错情况:

测试代码:

public class test {
          
   
    @Test
    public void test01() {
          
   
        ApplicationContext context = new ClassPathXmlApplicationContext("homework01.xml");
        Car car1 = (Car) context.getBean("car1");
        Car car2 = (Car) context.getBean("car2");
        Car car3 = (Car) context.getBean("car3");
        System.out.println(car1);
        System.out.println(car2);
        System.out.println(car3);

        CarService carService = (CarService) context.getBean("carService");
        carService.insert();
        carService.delete();
        carService.modify();

        System.out.println("修改之后的car1的车内人员");
        System.out.println(car1);
    }
}

修改之后(更换为main方法)

public class test {
          
   
    public static void main(String[] args) {
          
   
        ApplicationContext context = new ClassPathXmlApplicationContext("homework01.xml");
        Car car1 = (Car) context.getBean("car1");
        Car car2 = (Car) context.getBean("car2");
        Car car3 = (Car) context.getBean("car3");
        System.out.println(car1);
        System.out.println(car2);
        System.out.println(car3);

        CarService carService = (CarService) context.getBean("carService");
        carService.insert();
        carService.delete();
        carService.modify();

        System.out.println("修改之后的car1的车内人员");
        System.out.println(car1);
    }
}

原因:可能是新版本的IDEA与Junit包不兼容所导致的(我的IDEA是2020.3版本,Junit是4.12)。

经验分享 程序员 微信小程序 职场和发展